/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_valuebound1.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 06:21:51,527 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 06:21:51,529 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 06:21:51,557 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 06:21:51,558 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 06:21:51,559 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 06:21:51,564 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 06:21:51,568 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 06:21:51,569 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 06:21:51,572 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 06:21:51,573 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 06:21:51,574 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 06:21:51,574 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 06:21:51,576 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 06:21:51,577 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 06:21:51,578 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 06:21:51,578 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 06:21:51,579 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 06:21:51,582 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 06:21:51,585 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 06:21:51,586 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 06:21:51,587 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 06:21:51,588 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 06:21:51,589 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 06:21:51,589 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 06:21:51,594 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 06:21:51,594 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 06:21:51,594 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 06:21:51,595 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 06:21:51,595 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 06:21:51,596 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 06:21:51,596 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 06:21:51,598 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 06:21:51,598 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 06:21:51,598 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 06:21:51,599 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 06:21:51,599 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 06:21:51,600 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 06:21:51,600 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 06:21:51,600 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 06:21:51,600 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 06:21:51,602 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 06:21:51,602 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:21:51,608 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 06:21:51,609 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 06:21:51,610 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 06:21:51,610 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-08 06:21:51,610 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 06:21:51,610 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-08 06:21:51,610 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 06:21:51,610 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 06:21:51,610 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 06:21:51,611 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 06:21:51,611 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-08 06:21:51,611 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 06:21:51,611 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 06:21:51,611 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 06:21:51,612 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 06:21:51,612 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 06:21:51,612 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 06:21:51,612 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 06:21:51,612 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 06:21:51,612 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 06:21:51,612 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 06:21:51,612 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 06:21:51,612 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 06:21:51,613 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 06:21:51,613 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-08 06:21:51,613 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:21:51,786 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 06:21:51,816 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 06:21:51,817 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 06:21:51,818 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 06:21:51,818 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 06:21:51,819 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/hard-ll_valuebound1.c [2022-04-08 06:21:51,866 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/19a5ba6ac/099d4f010b60485b9beed321a28ec78e/FLAG5171683ce [2022-04-08 06:21:52,237 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 06:21:52,237 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/hard-ll_valuebound1.c [2022-04-08 06:21:52,241 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/19a5ba6ac/099d4f010b60485b9beed321a28ec78e/FLAG5171683ce [2022-04-08 06:21:52,250 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/19a5ba6ac/099d4f010b60485b9beed321a28ec78e [2022-04-08 06:21:52,252 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 06:21:52,252 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 06:21:52,253 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 06:21:52,253 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 06:21:52,255 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 06:21:52,256 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 06:21:52" (1/1) ... [2022-04-08 06:21:52,256 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@9b0b502 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:21:52, skipping insertion in model container [2022-04-08 06:21:52,257 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 06:21:52" (1/1) ... [2022-04-08 06:21:52,261 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 06:21:52,269 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 06:21:52,394 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_valuebound1.c[538,551] [2022-04-08 06:21:52,409 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 06:21:52,415 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 06:21:52,424 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_valuebound1.c[538,551] [2022-04-08 06:21:52,432 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 06:21:52,442 INFO L208 MainTranslator]: Completed translation [2022-04-08 06:21:52,442 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:21:52 WrapperNode [2022-04-08 06:21:52,442 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 06:21:52,443 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 06:21:52,443 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 06:21:52,443 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 06:21:52,451 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:21:52" (1/1) ... [2022-04-08 06:21:52,451 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:21:52" (1/1) ... [2022-04-08 06:21:52,456 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:21:52" (1/1) ... [2022-04-08 06:21:52,456 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:21:52" (1/1) ... [2022-04-08 06:21:52,461 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:21:52" (1/1) ... [2022-04-08 06:21:52,464 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:21:52" (1/1) ... [2022-04-08 06:21:52,464 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:21:52" (1/1) ... [2022-04-08 06:21:52,466 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 06:21:52,467 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 06:21:52,467 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 06:21:52,467 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 06:21:52,467 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:21:52" (1/1) ... [2022-04-08 06:21:52,473 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 06:21:52,481 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:21:52,508 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:21:52,528 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:21:52,547 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 06:21:52,548 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 06:21:52,548 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 06:21:52,548 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 06:21:52,549 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 06:21:52,549 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 06:21:52,549 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 06:21:52,549 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 06:21:52,549 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 06:21:52,549 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 06:21:52,549 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-08 06:21:52,550 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 06:21:52,551 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 06:21:52,551 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 06:21:52,551 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 06:21:52,551 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 06:21:52,551 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 06:21:52,551 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 06:21:52,551 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 06:21:52,551 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 06:21:52,607 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 06:21:52,609 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 06:21:52,812 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 06:21:52,818 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 06:21:52,818 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-08 06:21:52,819 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 06:21:52 BoogieIcfgContainer [2022-04-08 06:21:52,819 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 06:21:52,820 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 06:21:52,820 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 06:21:52,848 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 06:21:52,848 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 06:21:52" (1/3) ... [2022-04-08 06:21:52,849 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7b4f96b7 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 06:21:52, skipping insertion in model container [2022-04-08 06:21:52,849 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:21:52" (2/3) ... [2022-04-08 06:21:52,849 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7b4f96b7 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 06:21:52, skipping insertion in model container [2022-04-08 06:21:52,849 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 06:21:52" (3/3) ... [2022-04-08 06:21:52,850 INFO L111 eAbstractionObserver]: Analyzing ICFG hard-ll_valuebound1.c [2022-04-08 06:21:52,853 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 06:21:52,853 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 06:21:52,909 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 06:21:52,915 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:21:52,915 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 06:21:52,934 INFO L276 IsEmpty]: Start isEmpty. Operand has 38 states, 20 states have (on average 1.5) internal successors, (30), 21 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-08 06:21:52,939 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 06:21:52,940 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:21:52,940 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:21:52,941 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:21:52,944 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:21:52,945 INFO L85 PathProgramCache]: Analyzing trace with hash -1784424332, now seen corresponding path program 1 times [2022-04-08 06:21:52,954 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:21:52,955 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1419387947] [2022-04-08 06:21:52,968 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:21:52,968 INFO L85 PathProgramCache]: Analyzing trace with hash -1784424332, now seen corresponding path program 2 times [2022-04-08 06:21:52,971 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:21:52,971 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1245384087] [2022-04-08 06:21:52,971 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:21:52,972 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:21:53,065 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:53,136 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 06:21:53,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:53,167 INFO L290 TraceCheckUtils]: 0: Hoare triple {58#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3); {41#true} is VALID [2022-04-08 06:21:53,168 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-08 06:21:53,168 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {41#true} {41#true} #101#return; {41#true} is VALID [2022-04-08 06:21:53,169 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 06:21:53,172 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:53,179 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-08 06:21:53,179 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-08 06:21:53,180 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-08 06:21:53,180 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {41#true} #81#return; {42#false} is VALID [2022-04-08 06:21:53,181 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-08 06:21:53,192 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:53,203 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-08 06:21:53,204 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-08 06:21:53,204 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-08 06:21:53,204 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {42#false} #83#return; {42#false} is VALID [2022-04-08 06:21:53,204 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-08 06:21:53,206 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:53,215 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-08 06:21:53,216 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-08 06:21:53,216 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-08 06:21:53,216 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {42#false} #85#return; {42#false} is VALID [2022-04-08 06:21:53,217 INFO L272 TraceCheckUtils]: 0: Hoare triple {41#true} call ULTIMATE.init(); {58#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 06:21:53,217 INFO L290 TraceCheckUtils]: 1: Hoare triple {58#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3); {41#true} is VALID [2022-04-08 06:21:53,218 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-08 06:21:53,219 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#true} {41#true} #101#return; {41#true} is VALID [2022-04-08 06:21:53,219 INFO L272 TraceCheckUtils]: 4: Hoare triple {41#true} call #t~ret6 := main(); {41#true} is VALID [2022-04-08 06:21:53,219 INFO L290 TraceCheckUtils]: 5: Hoare triple {41#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; {41#true} is VALID [2022-04-08 06:21:53,220 INFO L272 TraceCheckUtils]: 6: Hoare triple {41#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {41#true} is VALID [2022-04-08 06:21:53,220 INFO L290 TraceCheckUtils]: 7: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-08 06:21:53,220 INFO L290 TraceCheckUtils]: 8: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-08 06:21:53,221 INFO L290 TraceCheckUtils]: 9: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-08 06:21:53,221 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42#false} {41#true} #81#return; {42#false} is VALID [2022-04-08 06:21:53,221 INFO L290 TraceCheckUtils]: 11: Hoare triple {42#false} ~B~0 := #t~nondet5;havoc #t~nondet5; {42#false} is VALID [2022-04-08 06:21:53,221 INFO L272 TraceCheckUtils]: 12: Hoare triple {42#false} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {41#true} is VALID [2022-04-08 06:21:53,221 INFO L290 TraceCheckUtils]: 13: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-08 06:21:53,222 INFO L290 TraceCheckUtils]: 14: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-08 06:21:53,222 INFO L290 TraceCheckUtils]: 15: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-08 06:21:53,222 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {42#false} {42#false} #83#return; {42#false} is VALID [2022-04-08 06:21:53,222 INFO L272 TraceCheckUtils]: 17: Hoare triple {42#false} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {41#true} is VALID [2022-04-08 06:21:53,223 INFO L290 TraceCheckUtils]: 18: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-08 06:21:53,224 INFO L290 TraceCheckUtils]: 19: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-08 06:21:53,224 INFO L290 TraceCheckUtils]: 20: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-08 06:21:53,225 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {42#false} {42#false} #85#return; {42#false} is VALID [2022-04-08 06:21:53,225 INFO L290 TraceCheckUtils]: 22: Hoare triple {42#false} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {42#false} is VALID [2022-04-08 06:21:53,225 INFO L290 TraceCheckUtils]: 23: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-08 06:21:53,226 INFO L272 TraceCheckUtils]: 24: Hoare triple {42#false} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {42#false} is VALID [2022-04-08 06:21:53,226 INFO L290 TraceCheckUtils]: 25: Hoare triple {42#false} ~cond := #in~cond; {42#false} is VALID [2022-04-08 06:21:53,227 INFO L290 TraceCheckUtils]: 26: Hoare triple {42#false} assume 0 == ~cond; {42#false} is VALID [2022-04-08 06:21:53,227 INFO L290 TraceCheckUtils]: 27: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-08 06:21:53,228 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-08 06:21:53,228 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:21:53,229 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1245384087] [2022-04-08 06:21:53,229 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1245384087] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:21:53,230 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:21:53,230 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 06:21:53,234 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:21:53,234 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1419387947] [2022-04-08 06:21:53,234 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1419387947] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:21:53,235 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:21:53,235 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 06:21:53,235 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [305835934] [2022-04-08 06:21:53,235 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:21:53,240 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, (6), 3 states have call predecessors, (6), 2 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:21:53,242 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:21:53,244 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 06:21:53,280 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:21:53,281 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 06:21:53,281 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:21:53,307 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 06:21:53,307 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 06:21:53,310 INFO L87 Difference]: Start difference. First operand has 38 states, 20 states have (on average 1.5) internal successors, (30), 21 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 06:21:53,521 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:53,521 INFO L93 Difference]: Finished difference Result 69 states and 110 transitions. [2022-04-08 06:21:53,522 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 06:21:53,522 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, (6), 3 states have call predecessors, (6), 2 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:21:53,523 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:21:53,525 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 06:21:53,537 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-08 06:21:53,537 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 06:21:53,543 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-08 06:21:53,543 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 110 transitions. [2022-04-08 06:21:53,687 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:21:53,697 INFO L225 Difference]: With dead ends: 69 [2022-04-08 06:21:53,698 INFO L226 Difference]: Without dead ends: 33 [2022-04-08 06:21:53,700 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 12 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:21:53,703 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 21 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 12 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 12 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:21:53,704 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 41 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 12 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:21:53,719 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states. [2022-04-08 06:21:53,733 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 33. [2022-04-08 06:21:53,734 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:21:53,734 INFO L82 GeneralOperation]: Start isEquivalent. First operand 33 states. Second operand has 33 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:21:53,735 INFO L74 IsIncluded]: Start isIncluded. First operand 33 states. Second operand has 33 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:21:53,736 INFO L87 Difference]: Start difference. First operand 33 states. Second operand has 33 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:21:53,739 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:53,739 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-08 06:21:53,740 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-08 06:21:53,740 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:21:53,740 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:21:53,741 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 33 states. [2022-04-08 06:21:53,741 INFO L87 Difference]: Start difference. First operand has 33 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 33 states. [2022-04-08 06:21:53,745 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:53,745 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-08 06:21:53,745 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-08 06:21:53,746 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:21:53,746 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:21:53,746 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:21:53,746 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:21:53,746 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:21:53,749 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 43 transitions. [2022-04-08 06:21:53,750 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 43 transitions. Word has length 28 [2022-04-08 06:21:53,750 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:21:53,750 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 43 transitions. [2022-04-08 06:21:53,750 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 06:21:53,751 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 33 states and 43 transitions. [2022-04-08 06:21:53,816 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:21:53,816 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-08 06:21:53,817 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 06:21:53,817 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:21:53,817 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:21:53,818 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 06:21:53,818 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:21:53,818 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:21:53,819 INFO L85 PathProgramCache]: Analyzing trace with hash 1361835634, now seen corresponding path program 1 times [2022-04-08 06:21:53,819 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:21:53,819 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [635746392] [2022-04-08 06:21:53,819 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:21:53,819 INFO L85 PathProgramCache]: Analyzing trace with hash 1361835634, now seen corresponding path program 2 times [2022-04-08 06:21:53,820 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:21:53,820 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1158500317] [2022-04-08 06:21:53,820 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:21:53,820 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:21:53,843 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:53,916 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 06:21:53,919 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:53,934 INFO L290 TraceCheckUtils]: 0: Hoare triple {351#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3); {331#true} is VALID [2022-04-08 06:21:53,934 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-08 06:21:53,934 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {331#true} {331#true} #101#return; {331#true} is VALID [2022-04-08 06:21:53,934 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 06:21:53,935 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:53,941 INFO L290 TraceCheckUtils]: 0: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-08 06:21:53,941 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-08 06:21:53,942 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-08 06:21:53,943 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} #81#return; {331#true} is VALID [2022-04-08 06:21:53,943 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-08 06:21:53,945 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:53,952 INFO L290 TraceCheckUtils]: 0: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-08 06:21:53,952 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-08 06:21:53,953 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-08 06:21:53,953 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} #83#return; {331#true} is VALID [2022-04-08 06:21:53,954 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-08 06:21:53,959 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:53,972 INFO L290 TraceCheckUtils]: 0: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-08 06:21:53,973 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-08 06:21:53,973 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-08 06:21:53,973 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} #85#return; {331#true} is VALID [2022-04-08 06:21:53,974 INFO L272 TraceCheckUtils]: 0: Hoare triple {331#true} call ULTIMATE.init(); {351#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 06:21:53,974 INFO L290 TraceCheckUtils]: 1: Hoare triple {351#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3); {331#true} is VALID [2022-04-08 06:21:53,974 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-08 06:21:53,975 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} #101#return; {331#true} is VALID [2022-04-08 06:21:53,975 INFO L272 TraceCheckUtils]: 4: Hoare triple {331#true} call #t~ret6 := main(); {331#true} is VALID [2022-04-08 06:21:53,975 INFO L290 TraceCheckUtils]: 5: Hoare triple {331#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; {331#true} is VALID [2022-04-08 06:21:53,975 INFO L272 TraceCheckUtils]: 6: Hoare triple {331#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {331#true} is VALID [2022-04-08 06:21:53,975 INFO L290 TraceCheckUtils]: 7: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-08 06:21:53,976 INFO L290 TraceCheckUtils]: 8: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-08 06:21:53,976 INFO L290 TraceCheckUtils]: 9: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-08 06:21:53,976 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {331#true} {331#true} #81#return; {331#true} is VALID [2022-04-08 06:21:53,976 INFO L290 TraceCheckUtils]: 11: Hoare triple {331#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {331#true} is VALID [2022-04-08 06:21:53,976 INFO L272 TraceCheckUtils]: 12: Hoare triple {331#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {331#true} is VALID [2022-04-08 06:21:53,977 INFO L290 TraceCheckUtils]: 13: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-08 06:21:53,977 INFO L290 TraceCheckUtils]: 14: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-08 06:21:53,977 INFO L290 TraceCheckUtils]: 15: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-08 06:21:53,977 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {331#true} {331#true} #83#return; {331#true} is VALID [2022-04-08 06:21:53,977 INFO L272 TraceCheckUtils]: 17: Hoare triple {331#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {331#true} is VALID [2022-04-08 06:21:53,978 INFO L290 TraceCheckUtils]: 18: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-08 06:21:53,978 INFO L290 TraceCheckUtils]: 19: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-08 06:21:53,978 INFO L290 TraceCheckUtils]: 20: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-08 06:21:53,978 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {331#true} {331#true} #85#return; {331#true} is VALID [2022-04-08 06:21:53,980 INFO L290 TraceCheckUtils]: 22: Hoare triple {331#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {348#(= main_~q~0 0)} is VALID [2022-04-08 06:21:53,981 INFO L290 TraceCheckUtils]: 23: Hoare triple {348#(= main_~q~0 0)} assume !false; {348#(= main_~q~0 0)} is VALID [2022-04-08 06:21:53,982 INFO L272 TraceCheckUtils]: 24: Hoare triple {348#(= main_~q~0 0)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {349#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:21:53,982 INFO L290 TraceCheckUtils]: 25: Hoare triple {349#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {350#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:21:53,982 INFO L290 TraceCheckUtils]: 26: Hoare triple {350#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {332#false} is VALID [2022-04-08 06:21:53,983 INFO L290 TraceCheckUtils]: 27: Hoare triple {332#false} assume !false; {332#false} is VALID [2022-04-08 06:21:53,983 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-08 06:21:53,983 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:21:53,983 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1158500317] [2022-04-08 06:21:53,984 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1158500317] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:21:53,984 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:21:53,984 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 06:21:53,985 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:21:53,985 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [635746392] [2022-04-08 06:21:53,985 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [635746392] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:21:53,985 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:21:53,985 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 06:21:53,985 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1044166565] [2022-04-08 06:21:53,986 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:21:53,986 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, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-08 06:21:53,987 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:21:53,987 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, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 06:21:54,007 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:21:54,008 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 06:21:54,008 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:21:54,008 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 06:21:54,009 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-08 06:21:54,009 INFO L87 Difference]: Start difference. First operand 33 states and 43 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, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 06:21:54,426 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:54,427 INFO L93 Difference]: Finished difference Result 46 states and 60 transitions. [2022-04-08 06:21:54,427 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 06:21:54,427 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, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-08 06:21:54,427 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:21:54,428 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, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 06:21:54,430 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-08 06:21:54,430 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, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 06:21:54,433 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-08 06:21:54,433 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 60 transitions. [2022-04-08 06:21:54,494 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:54,496 INFO L225 Difference]: With dead ends: 46 [2022-04-08 06:21:54,496 INFO L226 Difference]: Without dead ends: 44 [2022-04-08 06:21:54,497 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 9 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:21:54,498 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 38 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 126 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 44 SdHoareTripleChecker+Valid, 48 SdHoareTripleChecker+Invalid, 155 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 126 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 06:21:54,498 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [44 Valid, 48 Invalid, 155 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 126 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 06:21:54,499 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-08 06:21:54,506 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 37. [2022-04-08 06:21:54,506 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:21:54,506 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand has 37 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:21:54,507 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand has 37 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:21:54,507 INFO L87 Difference]: Start difference. First operand 44 states. Second operand has 37 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:21:54,510 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:54,510 INFO L93 Difference]: Finished difference Result 44 states and 58 transitions. [2022-04-08 06:21:54,510 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 58 transitions. [2022-04-08 06:21:54,511 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:21:54,511 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:21:54,512 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 44 states. [2022-04-08 06:21:54,512 INFO L87 Difference]: Start difference. First operand has 37 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 44 states. [2022-04-08 06:21:54,515 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:54,515 INFO L93 Difference]: Finished difference Result 44 states and 58 transitions. [2022-04-08 06:21:54,515 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 58 transitions. [2022-04-08 06:21:54,516 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:21:54,516 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:21:54,516 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:21:54,516 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:21:54,516 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:21:54,518 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 46 transitions. [2022-04-08 06:21:54,519 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 46 transitions. Word has length 28 [2022-04-08 06:21:54,519 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:21:54,519 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 46 transitions. [2022-04-08 06:21:54,519 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, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 06:21:54,519 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 46 transitions. [2022-04-08 06:21:54,568 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:21:54,568 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 46 transitions. [2022-04-08 06:21:54,569 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-08 06:21:54,569 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:21:54,569 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:21:54,569 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-08 06:21:54,569 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:21:54,570 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:21:54,570 INFO L85 PathProgramCache]: Analyzing trace with hash 1382067636, now seen corresponding path program 1 times [2022-04-08 06:21:54,570 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:21:54,570 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1003755487] [2022-04-08 06:21:54,571 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:21:54,571 INFO L85 PathProgramCache]: Analyzing trace with hash 1382067636, now seen corresponding path program 2 times [2022-04-08 06:21:54,571 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:21:54,571 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2012661528] [2022-04-08 06:21:54,571 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:21:54,572 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:21:54,586 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:54,657 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 06:21:54,659 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:54,663 INFO L290 TraceCheckUtils]: 0: Hoare triple {640#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3); {616#true} is VALID [2022-04-08 06:21:54,663 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 06:21:54,663 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {616#true} {616#true} #101#return; {616#true} is VALID [2022-04-08 06:21:54,664 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 06:21:54,664 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:54,667 INFO L290 TraceCheckUtils]: 0: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-08 06:21:54,668 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-08 06:21:54,668 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 06:21:54,668 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {616#true} #81#return; {616#true} is VALID [2022-04-08 06:21:54,668 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-08 06:21:54,669 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:54,672 INFO L290 TraceCheckUtils]: 0: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-08 06:21:54,672 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-08 06:21:54,672 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 06:21:54,672 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {616#true} #83#return; {616#true} is VALID [2022-04-08 06:21:54,673 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-08 06:21:54,673 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:54,676 INFO L290 TraceCheckUtils]: 0: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-08 06:21:54,676 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-08 06:21:54,676 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 06:21:54,676 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {616#true} #85#return; {616#true} is VALID [2022-04-08 06:21:54,677 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2022-04-08 06:21:54,679 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:54,682 INFO L290 TraceCheckUtils]: 0: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-08 06:21:54,683 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-08 06:21:54,683 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 06:21:54,683 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {633#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} #87#return; {633#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} is VALID [2022-04-08 06:21:54,684 INFO L272 TraceCheckUtils]: 0: Hoare triple {616#true} call ULTIMATE.init(); {640#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 06:21:54,684 INFO L290 TraceCheckUtils]: 1: Hoare triple {640#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3); {616#true} is VALID [2022-04-08 06:21:54,685 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 06:21:54,685 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {616#true} #101#return; {616#true} is VALID [2022-04-08 06:21:54,685 INFO L272 TraceCheckUtils]: 4: Hoare triple {616#true} call #t~ret6 := main(); {616#true} is VALID [2022-04-08 06:21:54,685 INFO L290 TraceCheckUtils]: 5: Hoare triple {616#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; {616#true} is VALID [2022-04-08 06:21:54,685 INFO L272 TraceCheckUtils]: 6: Hoare triple {616#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {616#true} is VALID [2022-04-08 06:21:54,685 INFO L290 TraceCheckUtils]: 7: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-08 06:21:54,686 INFO L290 TraceCheckUtils]: 8: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-08 06:21:54,686 INFO L290 TraceCheckUtils]: 9: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 06:21:54,686 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {616#true} {616#true} #81#return; {616#true} is VALID [2022-04-08 06:21:54,686 INFO L290 TraceCheckUtils]: 11: Hoare triple {616#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {616#true} is VALID [2022-04-08 06:21:54,686 INFO L272 TraceCheckUtils]: 12: Hoare triple {616#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {616#true} is VALID [2022-04-08 06:21:54,686 INFO L290 TraceCheckUtils]: 13: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-08 06:21:54,687 INFO L290 TraceCheckUtils]: 14: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-08 06:21:54,687 INFO L290 TraceCheckUtils]: 15: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 06:21:54,687 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {616#true} {616#true} #83#return; {616#true} is VALID [2022-04-08 06:21:54,687 INFO L272 TraceCheckUtils]: 17: Hoare triple {616#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {616#true} is VALID [2022-04-08 06:21:54,687 INFO L290 TraceCheckUtils]: 18: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-08 06:21:54,688 INFO L290 TraceCheckUtils]: 19: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-08 06:21:54,688 INFO L290 TraceCheckUtils]: 20: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 06:21:54,688 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {616#true} {616#true} #85#return; {616#true} is VALID [2022-04-08 06:21:54,689 INFO L290 TraceCheckUtils]: 22: Hoare triple {616#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {633#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} is VALID [2022-04-08 06:21:54,689 INFO L290 TraceCheckUtils]: 23: Hoare triple {633#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} assume !false; {633#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} is VALID [2022-04-08 06:21:54,689 INFO L272 TraceCheckUtils]: 24: Hoare triple {633#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {616#true} is VALID [2022-04-08 06:21:54,690 INFO L290 TraceCheckUtils]: 25: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-08 06:21:54,690 INFO L290 TraceCheckUtils]: 26: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-08 06:21:54,690 INFO L290 TraceCheckUtils]: 27: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 06:21:54,690 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {616#true} {633#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} #87#return; {633#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} is VALID [2022-04-08 06:21:54,691 INFO L272 TraceCheckUtils]: 29: Hoare triple {633#(= 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)); {638#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:21:54,692 INFO L290 TraceCheckUtils]: 30: Hoare triple {638#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {639#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:21:54,692 INFO L290 TraceCheckUtils]: 31: Hoare triple {639#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {617#false} is VALID [2022-04-08 06:21:54,692 INFO L290 TraceCheckUtils]: 32: Hoare triple {617#false} assume !false; {617#false} is VALID [2022-04-08 06:21:54,693 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-08 06:21:54,693 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:21:54,693 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2012661528] [2022-04-08 06:21:54,693 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2012661528] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:21:54,694 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:21:54,694 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 06:21:54,694 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:21:54,694 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1003755487] [2022-04-08 06:21:54,694 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1003755487] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:21:54,694 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:21:54,694 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 06:21:54,694 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [693768498] [2022-04-08 06:21:54,695 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:21:54,695 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, (7), 3 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 33 [2022-04-08 06:21:54,695 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:21:54,695 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, (7), 3 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:21:54,716 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:21:54,716 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 06:21:54,716 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:21:54,717 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 06:21:54,717 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-08 06:21:54,717 INFO L87 Difference]: Start difference. First operand 37 states and 46 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, (7), 3 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:21:55,173 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:55,174 INFO L93 Difference]: Finished difference Result 50 states and 63 transitions. [2022-04-08 06:21:55,174 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 06:21:55,174 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, (7), 3 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 33 [2022-04-08 06:21:55,175 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:21:55,175 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, (7), 3 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:21:55,177 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-08 06:21:55,177 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, (7), 3 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:21:55,178 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-08 06:21:55,179 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 60 transitions. [2022-04-08 06:21:55,242 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:55,244 INFO L225 Difference]: With dead ends: 50 [2022-04-08 06:21:55,244 INFO L226 Difference]: Without dead ends: 48 [2022-04-08 06:21:55,245 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 11 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:21:55,246 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 33 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 132 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 48 SdHoareTripleChecker+Invalid, 160 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 132 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 06:21:55,246 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [39 Valid, 48 Invalid, 160 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 132 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 06:21:55,247 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-08 06:21:55,253 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 41. [2022-04-08 06:21:55,253 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:21:55,254 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 41 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 states have internal predecessors, (27), 12 states have call successors, (12), 6 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:21:55,254 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 41 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 states have internal predecessors, (27), 12 states have call successors, (12), 6 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:21:55,254 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 41 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 states have internal predecessors, (27), 12 states have call successors, (12), 6 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:21:55,257 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:55,257 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-08 06:21:55,257 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-08 06:21:55,258 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:21:55,258 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:21:55,258 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 states have internal predecessors, (27), 12 states have call successors, (12), 6 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 48 states. [2022-04-08 06:21:55,259 INFO L87 Difference]: Start difference. First operand has 41 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 states have internal predecessors, (27), 12 states have call successors, (12), 6 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 48 states. [2022-04-08 06:21:55,261 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:55,261 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-08 06:21:55,261 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-08 06:21:55,262 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:21:55,262 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:21:55,262 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:21:55,262 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:21:55,262 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 states have internal predecessors, (27), 12 states have call successors, (12), 6 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:21:55,264 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 49 transitions. [2022-04-08 06:21:55,264 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 49 transitions. Word has length 33 [2022-04-08 06:21:55,264 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:21:55,264 INFO L478 AbstractCegarLoop]: Abstraction has 41 states and 49 transitions. [2022-04-08 06:21:55,264 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, (7), 3 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:21:55,265 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 41 states and 49 transitions. [2022-04-08 06:21:55,317 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:21:55,317 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 49 transitions. [2022-04-08 06:21:55,318 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-08 06:21:55,318 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:21:55,318 INFO L499 BasicCegarLoop]: trace histogram [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] [2022-04-08 06:21:55,318 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-04-08 06:21:55,319 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:21:55,319 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:21:55,319 INFO L85 PathProgramCache]: Analyzing trace with hash -1455208590, now seen corresponding path program 1 times [2022-04-08 06:21:55,319 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:21:55,319 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [950219144] [2022-04-08 06:21:55,320 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:21:55,320 INFO L85 PathProgramCache]: Analyzing trace with hash -1455208590, now seen corresponding path program 2 times [2022-04-08 06:21:55,320 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:21:55,320 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1770696506] [2022-04-08 06:21:55,320 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:21:55,320 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:21:55,333 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:21:55,333 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [361222016] [2022-04-08 06:21:55,333 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:21:55,334 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:21:55,334 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:21:55,347 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:21:55,376 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:21:55,391 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:21:55,392 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:21:55,393 INFO L263 TraceCheckSpWp]: Trace formula consists of 106 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 06:21:55,405 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:55,409 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:21:56,404 INFO L272 TraceCheckUtils]: 0: Hoare triple {929#true} call ULTIMATE.init(); {929#true} is VALID [2022-04-08 06:21:56,404 INFO L290 TraceCheckUtils]: 1: Hoare triple {929#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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); {929#true} is VALID [2022-04-08 06:21:56,405 INFO L290 TraceCheckUtils]: 2: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-08 06:21:56,405 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {929#true} {929#true} #101#return; {929#true} is VALID [2022-04-08 06:21:56,405 INFO L272 TraceCheckUtils]: 4: Hoare triple {929#true} call #t~ret6 := main(); {929#true} is VALID [2022-04-08 06:21:56,405 INFO L290 TraceCheckUtils]: 5: Hoare triple {929#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; {929#true} is VALID [2022-04-08 06:21:56,405 INFO L272 TraceCheckUtils]: 6: Hoare triple {929#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {929#true} is VALID [2022-04-08 06:21:56,406 INFO L290 TraceCheckUtils]: 7: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-08 06:21:56,406 INFO L290 TraceCheckUtils]: 8: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-08 06:21:56,406 INFO L290 TraceCheckUtils]: 9: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-08 06:21:56,406 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {929#true} {929#true} #81#return; {929#true} is VALID [2022-04-08 06:21:56,406 INFO L290 TraceCheckUtils]: 11: Hoare triple {929#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {929#true} is VALID [2022-04-08 06:21:56,406 INFO L272 TraceCheckUtils]: 12: Hoare triple {929#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {929#true} is VALID [2022-04-08 06:21:56,407 INFO L290 TraceCheckUtils]: 13: Hoare triple {929#true} ~cond := #in~cond; {973#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 06:21:56,407 INFO L290 TraceCheckUtils]: 14: Hoare triple {973#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {977#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:21:56,408 INFO L290 TraceCheckUtils]: 15: Hoare triple {977#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {977#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:21:56,408 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {977#(not (= |assume_abort_if_not_#in~cond| 0))} {929#true} #83#return; {984#(<= (mod main_~B~0 4294967296) 1)} is VALID [2022-04-08 06:21:56,409 INFO L272 TraceCheckUtils]: 17: Hoare triple {984#(<= (mod main_~B~0 4294967296) 1)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {929#true} is VALID [2022-04-08 06:21:56,409 INFO L290 TraceCheckUtils]: 18: Hoare triple {929#true} ~cond := #in~cond; {973#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 06:21:56,409 INFO L290 TraceCheckUtils]: 19: Hoare triple {973#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {977#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:21:56,410 INFO L290 TraceCheckUtils]: 20: Hoare triple {977#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {977#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:21:56,411 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {977#(not (= |assume_abort_if_not_#in~cond| 0))} {984#(<= (mod main_~B~0 4294967296) 1)} #85#return; {1000#(and (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:21:56,411 INFO L290 TraceCheckUtils]: 22: Hoare triple {1000#(and (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)))} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {1004#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:21:56,412 INFO L290 TraceCheckUtils]: 23: Hoare triple {1004#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !false; {1004#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:21:56,412 INFO L272 TraceCheckUtils]: 24: Hoare triple {1004#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {929#true} is VALID [2022-04-08 06:21:56,412 INFO L290 TraceCheckUtils]: 25: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-08 06:21:56,412 INFO L290 TraceCheckUtils]: 26: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-08 06:21:56,412 INFO L290 TraceCheckUtils]: 27: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-08 06:21:56,413 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {929#true} {1004#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #87#return; {1004#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:21:56,413 INFO L272 TraceCheckUtils]: 29: Hoare triple {1004#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {929#true} is VALID [2022-04-08 06:21:56,413 INFO L290 TraceCheckUtils]: 30: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-08 06:21:56,413 INFO L290 TraceCheckUtils]: 31: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-08 06:21:56,414 INFO L290 TraceCheckUtils]: 32: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-08 06:21:56,414 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {929#true} {1004#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #89#return; {1004#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:21:56,415 INFO L272 TraceCheckUtils]: 34: Hoare triple {1004#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 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)); {1041#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:21:56,416 INFO L290 TraceCheckUtils]: 35: Hoare triple {1041#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1045#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:21:56,416 INFO L290 TraceCheckUtils]: 36: Hoare triple {1045#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {930#false} is VALID [2022-04-08 06:21:56,417 INFO L290 TraceCheckUtils]: 37: Hoare triple {930#false} assume !false; {930#false} is VALID [2022-04-08 06:21:56,417 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-08 06:21:56,417 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 06:21:56,417 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:21:56,417 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1770696506] [2022-04-08 06:21:56,418 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:21:56,418 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [361222016] [2022-04-08 06:21:56,418 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [361222016] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:21:56,418 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:21:56,418 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 06:21:56,419 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:21:56,419 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [950219144] [2022-04-08 06:21:56,419 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [950219144] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:21:56,419 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:21:56,419 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 06:21:56,419 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1837515411] [2022-04-08 06:21:56,419 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:21:56,420 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Word has length 38 [2022-04-08 06:21:56,420 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:21:56,420 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 06:21:56,450 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:21:56,450 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 06:21:56,451 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:21:56,451 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 06:21:56,451 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-08 06:21:56,451 INFO L87 Difference]: Start difference. First operand 41 states and 49 transitions. Second operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 06:21:56,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:56,900 INFO L93 Difference]: Finished difference Result 69 states and 89 transitions. [2022-04-08 06:21:56,900 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 06:21:56,900 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Word has length 38 [2022-04-08 06:21:56,900 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:21:56,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 06:21:56,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 83 transitions. [2022-04-08 06:21:56,903 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 06:21:56,905 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 83 transitions. [2022-04-08 06:21:56,905 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 83 transitions. [2022-04-08 06:21:56,987 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:21:56,989 INFO L225 Difference]: With dead ends: 69 [2022-04-08 06:21:56,989 INFO L226 Difference]: Without dead ends: 55 [2022-04-08 06:21:56,989 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-08 06:21:56,990 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 33 mSDsluCounter, 138 mSDsCounter, 0 mSdLazyCounter, 117 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 44 SdHoareTripleChecker+Valid, 178 SdHoareTripleChecker+Invalid, 136 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 117 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:21:56,990 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [44 Valid, 178 Invalid, 136 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 117 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:21:56,990 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-08 06:21:57,027 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 55. [2022-04-08 06:21:57,027 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:21:57,028 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 55 states, 30 states have (on average 1.1666666666666667) internal successors, (35), 32 states have internal predecessors, (35), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 06:21:57,028 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 55 states, 30 states have (on average 1.1666666666666667) internal successors, (35), 32 states have internal predecessors, (35), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 06:21:57,028 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 55 states, 30 states have (on average 1.1666666666666667) internal successors, (35), 32 states have internal predecessors, (35), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 06:21:57,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:57,030 INFO L93 Difference]: Finished difference Result 55 states and 68 transitions. [2022-04-08 06:21:57,031 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 68 transitions. [2022-04-08 06:21:57,031 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:21:57,031 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:21:57,031 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 30 states have (on average 1.1666666666666667) internal successors, (35), 32 states have internal predecessors, (35), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 55 states. [2022-04-08 06:21:57,032 INFO L87 Difference]: Start difference. First operand has 55 states, 30 states have (on average 1.1666666666666667) internal successors, (35), 32 states have internal predecessors, (35), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 55 states. [2022-04-08 06:21:57,033 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:57,034 INFO L93 Difference]: Finished difference Result 55 states and 68 transitions. [2022-04-08 06:21:57,034 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 68 transitions. [2022-04-08 06:21:57,034 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:21:57,034 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:21:57,034 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:21:57,034 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:21:57,041 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 30 states have (on average 1.1666666666666667) internal successors, (35), 32 states have internal predecessors, (35), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 06:21:57,044 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 68 transitions. [2022-04-08 06:21:57,044 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 68 transitions. Word has length 38 [2022-04-08 06:21:57,044 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:21:57,044 INFO L478 AbstractCegarLoop]: Abstraction has 55 states and 68 transitions. [2022-04-08 06:21:57,044 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 06:21:57,044 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 55 states and 68 transitions. [2022-04-08 06:21:57,151 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:21:57,151 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 68 transitions. [2022-04-08 06:21:57,152 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-08 06:21:57,153 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:21:57,153 INFO L499 BasicCegarLoop]: trace histogram [4, 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, 1, 1, 1, 1, 1, 1] [2022-04-08 06:21:57,178 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:21:57,369 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:21:57,369 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:21:57,370 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:21:57,370 INFO L85 PathProgramCache]: Analyzing trace with hash -1688067263, now seen corresponding path program 1 times [2022-04-08 06:21:57,370 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:21:57,370 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [554288653] [2022-04-08 06:21:57,371 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:21:57,371 INFO L85 PathProgramCache]: Analyzing trace with hash -1688067263, now seen corresponding path program 2 times [2022-04-08 06:21:57,372 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:21:57,372 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1085199529] [2022-04-08 06:21:57,372 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:21:57,372 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:21:57,388 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:21:57,388 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1398316499] [2022-04-08 06:21:57,388 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:21:57,388 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:21:57,388 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:21:57,395 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:21:57,397 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:21:57,437 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:21:57,437 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:21:57,438 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 06:21:57,449 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:57,450 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:21:58,834 INFO L272 TraceCheckUtils]: 0: Hoare triple {1413#true} call ULTIMATE.init(); {1413#true} is VALID [2022-04-08 06:21:58,834 INFO L290 TraceCheckUtils]: 1: Hoare triple {1413#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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); {1413#true} is VALID [2022-04-08 06:21:58,834 INFO L290 TraceCheckUtils]: 2: Hoare triple {1413#true} assume true; {1413#true} is VALID [2022-04-08 06:21:58,834 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1413#true} {1413#true} #101#return; {1413#true} is VALID [2022-04-08 06:21:58,834 INFO L272 TraceCheckUtils]: 4: Hoare triple {1413#true} call #t~ret6 := main(); {1413#true} is VALID [2022-04-08 06:21:58,835 INFO L290 TraceCheckUtils]: 5: Hoare triple {1413#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; {1413#true} is VALID [2022-04-08 06:21:58,835 INFO L272 TraceCheckUtils]: 6: Hoare triple {1413#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {1413#true} is VALID [2022-04-08 06:21:58,835 INFO L290 TraceCheckUtils]: 7: Hoare triple {1413#true} ~cond := #in~cond; {1413#true} is VALID [2022-04-08 06:21:58,835 INFO L290 TraceCheckUtils]: 8: Hoare triple {1413#true} assume !(0 == ~cond); {1413#true} is VALID [2022-04-08 06:21:58,835 INFO L290 TraceCheckUtils]: 9: Hoare triple {1413#true} assume true; {1413#true} is VALID [2022-04-08 06:21:58,835 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1413#true} {1413#true} #81#return; {1413#true} is VALID [2022-04-08 06:21:58,835 INFO L290 TraceCheckUtils]: 11: Hoare triple {1413#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {1413#true} is VALID [2022-04-08 06:21:58,835 INFO L272 TraceCheckUtils]: 12: Hoare triple {1413#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {1413#true} is VALID [2022-04-08 06:21:58,836 INFO L290 TraceCheckUtils]: 13: Hoare triple {1413#true} ~cond := #in~cond; {1457#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 06:21:58,836 INFO L290 TraceCheckUtils]: 14: Hoare triple {1457#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1461#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:21:58,837 INFO L290 TraceCheckUtils]: 15: Hoare triple {1461#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1461#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:21:58,837 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1461#(not (= |assume_abort_if_not_#in~cond| 0))} {1413#true} #83#return; {1468#(<= (mod main_~B~0 4294967296) 1)} is VALID [2022-04-08 06:21:58,837 INFO L272 TraceCheckUtils]: 17: Hoare triple {1468#(<= (mod main_~B~0 4294967296) 1)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {1413#true} is VALID [2022-04-08 06:21:58,838 INFO L290 TraceCheckUtils]: 18: Hoare triple {1413#true} ~cond := #in~cond; {1413#true} is VALID [2022-04-08 06:21:58,838 INFO L290 TraceCheckUtils]: 19: Hoare triple {1413#true} assume !(0 == ~cond); {1413#true} is VALID [2022-04-08 06:21:58,838 INFO L290 TraceCheckUtils]: 20: Hoare triple {1413#true} assume true; {1413#true} is VALID [2022-04-08 06:21:58,838 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1413#true} {1468#(<= (mod main_~B~0 4294967296) 1)} #85#return; {1468#(<= (mod main_~B~0 4294967296) 1)} is VALID [2022-04-08 06:21:58,839 INFO L290 TraceCheckUtils]: 22: Hoare triple {1468#(<= (mod main_~B~0 4294967296) 1)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {1487#(and (<= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:21:58,840 INFO L290 TraceCheckUtils]: 23: Hoare triple {1487#(and (<= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !false; {1487#(and (<= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:21:58,840 INFO L272 TraceCheckUtils]: 24: Hoare triple {1487#(and (<= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {1413#true} is VALID [2022-04-08 06:21:58,840 INFO L290 TraceCheckUtils]: 25: Hoare triple {1413#true} ~cond := #in~cond; {1413#true} is VALID [2022-04-08 06:21:58,840 INFO L290 TraceCheckUtils]: 26: Hoare triple {1413#true} assume !(0 == ~cond); {1413#true} is VALID [2022-04-08 06:21:58,840 INFO L290 TraceCheckUtils]: 27: Hoare triple {1413#true} assume true; {1413#true} is VALID [2022-04-08 06:21:58,841 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1413#true} {1487#(and (<= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #87#return; {1487#(and (<= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:21:58,841 INFO L272 TraceCheckUtils]: 29: Hoare triple {1487#(and (<= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= 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)); {1413#true} is VALID [2022-04-08 06:21:58,841 INFO L290 TraceCheckUtils]: 30: Hoare triple {1413#true} ~cond := #in~cond; {1413#true} is VALID [2022-04-08 06:21:58,841 INFO L290 TraceCheckUtils]: 31: Hoare triple {1413#true} assume !(0 == ~cond); {1413#true} is VALID [2022-04-08 06:21:58,841 INFO L290 TraceCheckUtils]: 32: Hoare triple {1413#true} assume true; {1413#true} is VALID [2022-04-08 06:21:58,842 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1413#true} {1487#(and (<= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #89#return; {1487#(and (<= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:21:58,842 INFO L272 TraceCheckUtils]: 34: Hoare triple {1487#(and (<= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= 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)); {1413#true} is VALID [2022-04-08 06:21:58,842 INFO L290 TraceCheckUtils]: 35: Hoare triple {1413#true} ~cond := #in~cond; {1413#true} is VALID [2022-04-08 06:21:58,843 INFO L290 TraceCheckUtils]: 36: Hoare triple {1413#true} assume !(0 == ~cond); {1413#true} is VALID [2022-04-08 06:21:58,843 INFO L290 TraceCheckUtils]: 37: Hoare triple {1413#true} assume true; {1413#true} is VALID [2022-04-08 06:21:58,843 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1413#true} {1487#(and (<= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #91#return; {1487#(and (<= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:21:58,844 INFO L290 TraceCheckUtils]: 39: Hoare triple {1487#(and (<= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !(~r~0 >= ~d~0); {1539#(and (< main_~r~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:21:58,845 INFO L290 TraceCheckUtils]: 40: Hoare triple {1539#(and (< main_~r~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !false; {1539#(and (< main_~r~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:21:58,846 INFO L272 TraceCheckUtils]: 41: Hoare triple {1539#(and (< main_~r~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= 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)); {1546#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:21:58,847 INFO L290 TraceCheckUtils]: 42: Hoare triple {1546#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1550#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:21:58,847 INFO L290 TraceCheckUtils]: 43: Hoare triple {1550#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1414#false} is VALID [2022-04-08 06:21:58,847 INFO L290 TraceCheckUtils]: 44: Hoare triple {1414#false} assume !false; {1414#false} is VALID [2022-04-08 06:21:58,847 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 9 proven. 3 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-04-08 06:21:58,848 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:21:59,650 INFO L290 TraceCheckUtils]: 44: Hoare triple {1414#false} assume !false; {1414#false} is VALID [2022-04-08 06:21:59,651 INFO L290 TraceCheckUtils]: 43: Hoare triple {1550#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1414#false} is VALID [2022-04-08 06:21:59,651 INFO L290 TraceCheckUtils]: 42: Hoare triple {1546#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1550#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:21:59,652 INFO L272 TraceCheckUtils]: 41: Hoare triple {1566#(= (+ 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)); {1546#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:21:59,652 INFO L290 TraceCheckUtils]: 40: Hoare triple {1566#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} assume !false; {1566#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-08 06:21:59,653 INFO L290 TraceCheckUtils]: 39: Hoare triple {1573#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} assume !(~r~0 >= ~d~0); {1566#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-08 06:21:59,653 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1413#true} {1573#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} #91#return; {1573#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:21:59,653 INFO L290 TraceCheckUtils]: 37: Hoare triple {1413#true} assume true; {1413#true} is VALID [2022-04-08 06:21:59,653 INFO L290 TraceCheckUtils]: 36: Hoare triple {1413#true} assume !(0 == ~cond); {1413#true} is VALID [2022-04-08 06:21:59,654 INFO L290 TraceCheckUtils]: 35: Hoare triple {1413#true} ~cond := #in~cond; {1413#true} is VALID [2022-04-08 06:21:59,654 INFO L272 TraceCheckUtils]: 34: Hoare triple {1573#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~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)); {1413#true} is VALID [2022-04-08 06:21:59,654 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1413#true} {1573#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} #89#return; {1573#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:21:59,654 INFO L290 TraceCheckUtils]: 32: Hoare triple {1413#true} assume true; {1413#true} is VALID [2022-04-08 06:21:59,654 INFO L290 TraceCheckUtils]: 31: Hoare triple {1413#true} assume !(0 == ~cond); {1413#true} is VALID [2022-04-08 06:21:59,654 INFO L290 TraceCheckUtils]: 30: Hoare triple {1413#true} ~cond := #in~cond; {1413#true} is VALID [2022-04-08 06:21:59,655 INFO L272 TraceCheckUtils]: 29: Hoare triple {1573#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {1413#true} is VALID [2022-04-08 06:21:59,655 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1413#true} {1573#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} #87#return; {1573#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:21:59,655 INFO L290 TraceCheckUtils]: 27: Hoare triple {1413#true} assume true; {1413#true} is VALID [2022-04-08 06:21:59,655 INFO L290 TraceCheckUtils]: 26: Hoare triple {1413#true} assume !(0 == ~cond); {1413#true} is VALID [2022-04-08 06:21:59,655 INFO L290 TraceCheckUtils]: 25: Hoare triple {1413#true} ~cond := #in~cond; {1413#true} is VALID [2022-04-08 06:21:59,656 INFO L272 TraceCheckUtils]: 24: Hoare triple {1573#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {1413#true} is VALID [2022-04-08 06:21:59,656 INFO L290 TraceCheckUtils]: 23: Hoare triple {1573#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} assume !false; {1573#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:21:59,656 INFO L290 TraceCheckUtils]: 22: Hoare triple {1468#(<= (mod main_~B~0 4294967296) 1)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {1573#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:21:59,657 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1413#true} {1468#(<= (mod main_~B~0 4294967296) 1)} #85#return; {1468#(<= (mod main_~B~0 4294967296) 1)} is VALID [2022-04-08 06:21:59,657 INFO L290 TraceCheckUtils]: 20: Hoare triple {1413#true} assume true; {1413#true} is VALID [2022-04-08 06:21:59,657 INFO L290 TraceCheckUtils]: 19: Hoare triple {1413#true} assume !(0 == ~cond); {1413#true} is VALID [2022-04-08 06:21:59,657 INFO L290 TraceCheckUtils]: 18: Hoare triple {1413#true} ~cond := #in~cond; {1413#true} is VALID [2022-04-08 06:21:59,657 INFO L272 TraceCheckUtils]: 17: Hoare triple {1468#(<= (mod main_~B~0 4294967296) 1)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {1413#true} is VALID [2022-04-08 06:21:59,658 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1461#(not (= |assume_abort_if_not_#in~cond| 0))} {1413#true} #83#return; {1468#(<= (mod main_~B~0 4294967296) 1)} is VALID [2022-04-08 06:21:59,658 INFO L290 TraceCheckUtils]: 15: Hoare triple {1461#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1461#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:21:59,658 INFO L290 TraceCheckUtils]: 14: Hoare triple {1652#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {1461#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:21:59,659 INFO L290 TraceCheckUtils]: 13: Hoare triple {1413#true} ~cond := #in~cond; {1652#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-08 06:21:59,659 INFO L272 TraceCheckUtils]: 12: Hoare triple {1413#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {1413#true} is VALID [2022-04-08 06:21:59,659 INFO L290 TraceCheckUtils]: 11: Hoare triple {1413#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {1413#true} is VALID [2022-04-08 06:21:59,659 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1413#true} {1413#true} #81#return; {1413#true} is VALID [2022-04-08 06:21:59,659 INFO L290 TraceCheckUtils]: 9: Hoare triple {1413#true} assume true; {1413#true} is VALID [2022-04-08 06:21:59,659 INFO L290 TraceCheckUtils]: 8: Hoare triple {1413#true} assume !(0 == ~cond); {1413#true} is VALID [2022-04-08 06:21:59,659 INFO L290 TraceCheckUtils]: 7: Hoare triple {1413#true} ~cond := #in~cond; {1413#true} is VALID [2022-04-08 06:21:59,660 INFO L272 TraceCheckUtils]: 6: Hoare triple {1413#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {1413#true} is VALID [2022-04-08 06:21:59,660 INFO L290 TraceCheckUtils]: 5: Hoare triple {1413#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; {1413#true} is VALID [2022-04-08 06:21:59,660 INFO L272 TraceCheckUtils]: 4: Hoare triple {1413#true} call #t~ret6 := main(); {1413#true} is VALID [2022-04-08 06:21:59,660 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1413#true} {1413#true} #101#return; {1413#true} is VALID [2022-04-08 06:21:59,660 INFO L290 TraceCheckUtils]: 2: Hoare triple {1413#true} assume true; {1413#true} is VALID [2022-04-08 06:21:59,660 INFO L290 TraceCheckUtils]: 1: Hoare triple {1413#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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); {1413#true} is VALID [2022-04-08 06:21:59,660 INFO L272 TraceCheckUtils]: 0: Hoare triple {1413#true} call ULTIMATE.init(); {1413#true} is VALID [2022-04-08 06:21:59,660 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 9 proven. 3 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-04-08 06:21:59,660 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:21:59,661 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1085199529] [2022-04-08 06:21:59,661 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:21:59,661 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1398316499] [2022-04-08 06:21:59,661 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1398316499] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:21:59,661 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:21:59,661 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 12 [2022-04-08 06:21:59,661 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:21:59,661 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [554288653] [2022-04-08 06:21:59,661 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [554288653] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:21:59,661 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:21:59,661 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 06:21:59,661 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1816621799] [2022-04-08 06:21:59,662 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:21:59,662 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) Word has length 45 [2022-04-08 06:21:59,662 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:21:59,662 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-08 06:21:59,688 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:21:59,688 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 06:21:59,688 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:21:59,689 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 06:21:59,689 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=103, Unknown=0, NotChecked=0, Total=132 [2022-04-08 06:21:59,689 INFO L87 Difference]: Start difference. First operand 55 states and 68 transitions. Second operand has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-08 06:22:00,133 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:00,133 INFO L93 Difference]: Finished difference Result 65 states and 76 transitions. [2022-04-08 06:22:00,133 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 06:22:00,133 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) Word has length 45 [2022-04-08 06:22:00,134 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:22:00,134 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-08 06:22:00,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 64 transitions. [2022-04-08 06:22:00,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-08 06:22:00,136 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 64 transitions. [2022-04-08 06:22:00,137 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 64 transitions. [2022-04-08 06:22:00,187 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:22:00,189 INFO L225 Difference]: With dead ends: 65 [2022-04-08 06:22:00,189 INFO L226 Difference]: Without dead ends: 54 [2022-04-08 06:22:00,189 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 78 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=45, Invalid=165, Unknown=0, NotChecked=0, Total=210 [2022-04-08 06:22:00,190 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 23 mSDsluCounter, 136 mSDsCounter, 0 mSdLazyCounter, 150 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 173 SdHoareTripleChecker+Invalid, 160 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 150 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:22:00,190 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 173 Invalid, 160 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 150 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:22:00,190 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-04-08 06:22:00,222 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 54. [2022-04-08 06:22:00,222 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:22:00,222 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand has 54 states, 31 states have (on average 1.1290322580645162) internal successors, (35), 32 states have internal predecessors, (35), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 06:22:00,223 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand has 54 states, 31 states have (on average 1.1290322580645162) internal successors, (35), 32 states have internal predecessors, (35), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 06:22:00,223 INFO L87 Difference]: Start difference. First operand 54 states. Second operand has 54 states, 31 states have (on average 1.1290322580645162) internal successors, (35), 32 states have internal predecessors, (35), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 06:22:00,225 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:00,225 INFO L93 Difference]: Finished difference Result 54 states and 63 transitions. [2022-04-08 06:22:00,225 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 63 transitions. [2022-04-08 06:22:00,225 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:22:00,225 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:22:00,225 INFO L74 IsIncluded]: Start isIncluded. First operand has 54 states, 31 states have (on average 1.1290322580645162) internal successors, (35), 32 states have internal predecessors, (35), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 54 states. [2022-04-08 06:22:00,226 INFO L87 Difference]: Start difference. First operand has 54 states, 31 states have (on average 1.1290322580645162) internal successors, (35), 32 states have internal predecessors, (35), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 54 states. [2022-04-08 06:22:00,227 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:00,227 INFO L93 Difference]: Finished difference Result 54 states and 63 transitions. [2022-04-08 06:22:00,227 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 63 transitions. [2022-04-08 06:22:00,227 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:22:00,228 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:22:00,228 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:22:00,228 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:22:00,228 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 54 states, 31 states have (on average 1.1290322580645162) internal successors, (35), 32 states have internal predecessors, (35), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 06:22:00,229 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 63 transitions. [2022-04-08 06:22:00,229 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 63 transitions. Word has length 45 [2022-04-08 06:22:00,229 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:22:00,229 INFO L478 AbstractCegarLoop]: Abstraction has 54 states and 63 transitions. [2022-04-08 06:22:00,230 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.2222222222222223) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-08 06:22:00,230 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 54 states and 63 transitions. [2022-04-08 06:22:00,293 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:22:00,293 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 63 transitions. [2022-04-08 06:22:00,294 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-08 06:22:00,294 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:22:00,294 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 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:22:00,313 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-08 06:22:00,505 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:22:00,505 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:22:00,505 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:22:00,505 INFO L85 PathProgramCache]: Analyzing trace with hash -1471734606, now seen corresponding path program 1 times [2022-04-08 06:22:00,505 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:22:00,506 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1903671394] [2022-04-08 06:22:00,506 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:22:00,506 INFO L85 PathProgramCache]: Analyzing trace with hash -1471734606, now seen corresponding path program 2 times [2022-04-08 06:22:00,506 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:22:00,506 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1254349890] [2022-04-08 06:22:00,506 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:22:00,506 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:22:00,523 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:22:00,523 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [407505265] [2022-04-08 06:22:00,523 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:22:00,523 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:22:00,523 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:22:00,535 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:22:00,536 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:22:00,576 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:22:00,576 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:22:00,577 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-08 06:22:00,588 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:22:00,589 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:22:01,824 INFO L272 TraceCheckUtils]: 0: Hoare triple {2046#true} call ULTIMATE.init(); {2046#true} is VALID [2022-04-08 06:22:01,825 INFO L290 TraceCheckUtils]: 1: Hoare triple {2046#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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); {2046#true} is VALID [2022-04-08 06:22:01,825 INFO L290 TraceCheckUtils]: 2: Hoare triple {2046#true} assume true; {2046#true} is VALID [2022-04-08 06:22:01,825 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2046#true} {2046#true} #101#return; {2046#true} is VALID [2022-04-08 06:22:01,825 INFO L272 TraceCheckUtils]: 4: Hoare triple {2046#true} call #t~ret6 := main(); {2046#true} is VALID [2022-04-08 06:22:01,825 INFO L290 TraceCheckUtils]: 5: Hoare triple {2046#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; {2046#true} is VALID [2022-04-08 06:22:01,825 INFO L272 TraceCheckUtils]: 6: Hoare triple {2046#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {2046#true} is VALID [2022-04-08 06:22:01,825 INFO L290 TraceCheckUtils]: 7: Hoare triple {2046#true} ~cond := #in~cond; {2046#true} is VALID [2022-04-08 06:22:01,825 INFO L290 TraceCheckUtils]: 8: Hoare triple {2046#true} assume !(0 == ~cond); {2046#true} is VALID [2022-04-08 06:22:01,825 INFO L290 TraceCheckUtils]: 9: Hoare triple {2046#true} assume true; {2046#true} is VALID [2022-04-08 06:22:01,826 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2046#true} {2046#true} #81#return; {2046#true} is VALID [2022-04-08 06:22:01,826 INFO L290 TraceCheckUtils]: 11: Hoare triple {2046#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2046#true} is VALID [2022-04-08 06:22:01,826 INFO L272 TraceCheckUtils]: 12: Hoare triple {2046#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {2046#true} is VALID [2022-04-08 06:22:01,826 INFO L290 TraceCheckUtils]: 13: Hoare triple {2046#true} ~cond := #in~cond; {2090#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 06:22:01,826 INFO L290 TraceCheckUtils]: 14: Hoare triple {2090#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2094#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:22:01,827 INFO L290 TraceCheckUtils]: 15: Hoare triple {2094#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2094#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:22:01,827 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2094#(not (= |assume_abort_if_not_#in~cond| 0))} {2046#true} #83#return; {2101#(<= (mod main_~B~0 4294967296) 1)} is VALID [2022-04-08 06:22:01,827 INFO L272 TraceCheckUtils]: 17: Hoare triple {2101#(<= (mod main_~B~0 4294967296) 1)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2046#true} is VALID [2022-04-08 06:22:01,828 INFO L290 TraceCheckUtils]: 18: Hoare triple {2046#true} ~cond := #in~cond; {2090#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 06:22:01,828 INFO L290 TraceCheckUtils]: 19: Hoare triple {2090#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2094#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:22:01,828 INFO L290 TraceCheckUtils]: 20: Hoare triple {2094#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2094#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:22:01,829 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2094#(not (= |assume_abort_if_not_#in~cond| 0))} {2101#(<= (mod main_~B~0 4294967296) 1)} #85#return; {2117#(and (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:01,829 INFO L290 TraceCheckUtils]: 22: Hoare triple {2117#(and (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)))} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {2121#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:22:01,830 INFO L290 TraceCheckUtils]: 23: Hoare triple {2121#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !false; {2121#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:22:01,830 INFO L272 TraceCheckUtils]: 24: Hoare triple {2121#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {2046#true} is VALID [2022-04-08 06:22:01,830 INFO L290 TraceCheckUtils]: 25: Hoare triple {2046#true} ~cond := #in~cond; {2046#true} is VALID [2022-04-08 06:22:01,830 INFO L290 TraceCheckUtils]: 26: Hoare triple {2046#true} assume !(0 == ~cond); {2046#true} is VALID [2022-04-08 06:22:01,830 INFO L290 TraceCheckUtils]: 27: Hoare triple {2046#true} assume true; {2046#true} is VALID [2022-04-08 06:22:01,831 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2046#true} {2121#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #87#return; {2121#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:22:01,831 INFO L272 TraceCheckUtils]: 29: Hoare triple {2121#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {2046#true} is VALID [2022-04-08 06:22:01,831 INFO L290 TraceCheckUtils]: 30: Hoare triple {2046#true} ~cond := #in~cond; {2046#true} is VALID [2022-04-08 06:22:01,831 INFO L290 TraceCheckUtils]: 31: Hoare triple {2046#true} assume !(0 == ~cond); {2046#true} is VALID [2022-04-08 06:22:01,831 INFO L290 TraceCheckUtils]: 32: Hoare triple {2046#true} assume true; {2046#true} is VALID [2022-04-08 06:22:01,832 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2046#true} {2121#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #89#return; {2121#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:22:01,832 INFO L272 TraceCheckUtils]: 34: Hoare triple {2121#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 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)); {2046#true} is VALID [2022-04-08 06:22:01,832 INFO L290 TraceCheckUtils]: 35: Hoare triple {2046#true} ~cond := #in~cond; {2046#true} is VALID [2022-04-08 06:22:01,832 INFO L290 TraceCheckUtils]: 36: Hoare triple {2046#true} assume !(0 == ~cond); {2046#true} is VALID [2022-04-08 06:22:01,832 INFO L290 TraceCheckUtils]: 37: Hoare triple {2046#true} assume true; {2046#true} is VALID [2022-04-08 06:22:01,832 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2046#true} {2121#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #91#return; {2121#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:22:01,833 INFO L290 TraceCheckUtils]: 39: Hoare triple {2121#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (<= 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; {2173#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:01,834 INFO L290 TraceCheckUtils]: 40: Hoare triple {2173#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)))} assume !false; {2173#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:01,834 INFO L272 TraceCheckUtils]: 41: Hoare triple {2173#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {2046#true} is VALID [2022-04-08 06:22:01,834 INFO L290 TraceCheckUtils]: 42: Hoare triple {2046#true} ~cond := #in~cond; {2046#true} is VALID [2022-04-08 06:22:01,834 INFO L290 TraceCheckUtils]: 43: Hoare triple {2046#true} assume !(0 == ~cond); {2046#true} is VALID [2022-04-08 06:22:01,834 INFO L290 TraceCheckUtils]: 44: Hoare triple {2046#true} assume true; {2046#true} is VALID [2022-04-08 06:22:01,834 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2046#true} {2173#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)))} #87#return; {2173#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:01,835 INFO L272 TraceCheckUtils]: 46: Hoare triple {2173#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {2046#true} is VALID [2022-04-08 06:22:01,835 INFO L290 TraceCheckUtils]: 47: Hoare triple {2046#true} ~cond := #in~cond; {2046#true} is VALID [2022-04-08 06:22:01,835 INFO L290 TraceCheckUtils]: 48: Hoare triple {2046#true} assume !(0 == ~cond); {2046#true} is VALID [2022-04-08 06:22:01,835 INFO L290 TraceCheckUtils]: 49: Hoare triple {2046#true} assume true; {2046#true} is VALID [2022-04-08 06:22:01,835 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2046#true} {2173#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)))} #89#return; {2173#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:01,836 INFO L272 TraceCheckUtils]: 51: Hoare triple {2173#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {2210#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:22:01,836 INFO L290 TraceCheckUtils]: 52: Hoare triple {2210#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2214#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:22:01,837 INFO L290 TraceCheckUtils]: 53: Hoare triple {2214#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2047#false} is VALID [2022-04-08 06:22:01,837 INFO L290 TraceCheckUtils]: 54: Hoare triple {2047#false} assume !false; {2047#false} is VALID [2022-04-08 06:22:01,837 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 16 proven. 4 refuted. 0 times theorem prover too weak. 46 trivial. 0 not checked. [2022-04-08 06:22:01,837 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:22:02,300 INFO L290 TraceCheckUtils]: 54: Hoare triple {2047#false} assume !false; {2047#false} is VALID [2022-04-08 06:22:02,302 INFO L290 TraceCheckUtils]: 53: Hoare triple {2214#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2047#false} is VALID [2022-04-08 06:22:02,302 INFO L290 TraceCheckUtils]: 52: Hoare triple {2210#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2214#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:22:02,303 INFO L272 TraceCheckUtils]: 51: Hoare triple {2230#(= 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)); {2210#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:22:02,304 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2046#true} {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #89#return; {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:02,304 INFO L290 TraceCheckUtils]: 49: Hoare triple {2046#true} assume true; {2046#true} is VALID [2022-04-08 06:22:02,304 INFO L290 TraceCheckUtils]: 48: Hoare triple {2046#true} assume !(0 == ~cond); {2046#true} is VALID [2022-04-08 06:22:02,304 INFO L290 TraceCheckUtils]: 47: Hoare triple {2046#true} ~cond := #in~cond; {2046#true} is VALID [2022-04-08 06:22:02,304 INFO L272 TraceCheckUtils]: 46: Hoare triple {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {2046#true} is VALID [2022-04-08 06:22:02,305 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2046#true} {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #87#return; {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:02,305 INFO L290 TraceCheckUtils]: 44: Hoare triple {2046#true} assume true; {2046#true} is VALID [2022-04-08 06:22:02,305 INFO L290 TraceCheckUtils]: 43: Hoare triple {2046#true} assume !(0 == ~cond); {2046#true} is VALID [2022-04-08 06:22:02,305 INFO L290 TraceCheckUtils]: 42: Hoare triple {2046#true} ~cond := #in~cond; {2046#true} is VALID [2022-04-08 06:22:02,305 INFO L272 TraceCheckUtils]: 41: Hoare triple {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {2046#true} is VALID [2022-04-08 06:22:02,306 INFO L290 TraceCheckUtils]: 40: Hoare triple {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !false; {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:02,377 INFO L290 TraceCheckUtils]: 39: Hoare triple {2230#(= 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; {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:02,377 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2046#true} {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #91#return; {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:02,378 INFO L290 TraceCheckUtils]: 37: Hoare triple {2046#true} assume true; {2046#true} is VALID [2022-04-08 06:22:02,378 INFO L290 TraceCheckUtils]: 36: Hoare triple {2046#true} assume !(0 == ~cond); {2046#true} is VALID [2022-04-08 06:22:02,378 INFO L290 TraceCheckUtils]: 35: Hoare triple {2046#true} ~cond := #in~cond; {2046#true} is VALID [2022-04-08 06:22:02,378 INFO L272 TraceCheckUtils]: 34: Hoare triple {2230#(= 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)); {2046#true} is VALID [2022-04-08 06:22:02,378 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2046#true} {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #89#return; {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:02,378 INFO L290 TraceCheckUtils]: 32: Hoare triple {2046#true} assume true; {2046#true} is VALID [2022-04-08 06:22:02,378 INFO L290 TraceCheckUtils]: 31: Hoare triple {2046#true} assume !(0 == ~cond); {2046#true} is VALID [2022-04-08 06:22:02,379 INFO L290 TraceCheckUtils]: 30: Hoare triple {2046#true} ~cond := #in~cond; {2046#true} is VALID [2022-04-08 06:22:02,379 INFO L272 TraceCheckUtils]: 29: Hoare triple {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {2046#true} is VALID [2022-04-08 06:22:02,379 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2046#true} {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #87#return; {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:02,379 INFO L290 TraceCheckUtils]: 27: Hoare triple {2046#true} assume true; {2046#true} is VALID [2022-04-08 06:22:02,379 INFO L290 TraceCheckUtils]: 26: Hoare triple {2046#true} assume !(0 == ~cond); {2046#true} is VALID [2022-04-08 06:22:02,379 INFO L290 TraceCheckUtils]: 25: Hoare triple {2046#true} ~cond := #in~cond; {2046#true} is VALID [2022-04-08 06:22:02,379 INFO L272 TraceCheckUtils]: 24: Hoare triple {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {2046#true} is VALID [2022-04-08 06:22:02,380 INFO L290 TraceCheckUtils]: 23: Hoare triple {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !false; {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:02,380 INFO L290 TraceCheckUtils]: 22: Hoare triple {2046#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {2230#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:02,380 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2046#true} {2046#true} #85#return; {2046#true} is VALID [2022-04-08 06:22:02,380 INFO L290 TraceCheckUtils]: 20: Hoare triple {2046#true} assume true; {2046#true} is VALID [2022-04-08 06:22:02,380 INFO L290 TraceCheckUtils]: 19: Hoare triple {2046#true} assume !(0 == ~cond); {2046#true} is VALID [2022-04-08 06:22:02,380 INFO L290 TraceCheckUtils]: 18: Hoare triple {2046#true} ~cond := #in~cond; {2046#true} is VALID [2022-04-08 06:22:02,380 INFO L272 TraceCheckUtils]: 17: Hoare triple {2046#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2046#true} is VALID [2022-04-08 06:22:02,381 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2046#true} {2046#true} #83#return; {2046#true} is VALID [2022-04-08 06:22:02,381 INFO L290 TraceCheckUtils]: 15: Hoare triple {2046#true} assume true; {2046#true} is VALID [2022-04-08 06:22:02,381 INFO L290 TraceCheckUtils]: 14: Hoare triple {2046#true} assume !(0 == ~cond); {2046#true} is VALID [2022-04-08 06:22:02,381 INFO L290 TraceCheckUtils]: 13: Hoare triple {2046#true} ~cond := #in~cond; {2046#true} is VALID [2022-04-08 06:22:02,381 INFO L272 TraceCheckUtils]: 12: Hoare triple {2046#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {2046#true} is VALID [2022-04-08 06:22:02,381 INFO L290 TraceCheckUtils]: 11: Hoare triple {2046#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2046#true} is VALID [2022-04-08 06:22:02,381 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2046#true} {2046#true} #81#return; {2046#true} is VALID [2022-04-08 06:22:02,381 INFO L290 TraceCheckUtils]: 9: Hoare triple {2046#true} assume true; {2046#true} is VALID [2022-04-08 06:22:02,381 INFO L290 TraceCheckUtils]: 8: Hoare triple {2046#true} assume !(0 == ~cond); {2046#true} is VALID [2022-04-08 06:22:02,381 INFO L290 TraceCheckUtils]: 7: Hoare triple {2046#true} ~cond := #in~cond; {2046#true} is VALID [2022-04-08 06:22:02,381 INFO L272 TraceCheckUtils]: 6: Hoare triple {2046#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {2046#true} is VALID [2022-04-08 06:22:02,382 INFO L290 TraceCheckUtils]: 5: Hoare triple {2046#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; {2046#true} is VALID [2022-04-08 06:22:02,382 INFO L272 TraceCheckUtils]: 4: Hoare triple {2046#true} call #t~ret6 := main(); {2046#true} is VALID [2022-04-08 06:22:02,382 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2046#true} {2046#true} #101#return; {2046#true} is VALID [2022-04-08 06:22:02,382 INFO L290 TraceCheckUtils]: 2: Hoare triple {2046#true} assume true; {2046#true} is VALID [2022-04-08 06:22:02,382 INFO L290 TraceCheckUtils]: 1: Hoare triple {2046#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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); {2046#true} is VALID [2022-04-08 06:22:02,382 INFO L272 TraceCheckUtils]: 0: Hoare triple {2046#true} call ULTIMATE.init(); {2046#true} is VALID [2022-04-08 06:22:02,382 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 56 trivial. 0 not checked. [2022-04-08 06:22:02,382 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:22:02,383 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1254349890] [2022-04-08 06:22:02,383 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:22:02,383 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [407505265] [2022-04-08 06:22:02,383 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [407505265] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 06:22:02,383 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 06:22:02,383 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-08 06:22:02,383 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:22:02,383 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1903671394] [2022-04-08 06:22:02,383 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1903671394] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:22:02,383 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:22:02,383 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 06:22:02,383 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1436733851] [2022-04-08 06:22:02,383 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:22:02,384 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, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 55 [2022-04-08 06:22:02,384 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:22:02,384 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, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 06:22:02,406 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:22:02,406 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 06:22:02,406 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:22:02,406 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 06:22:02,406 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-08 06:22:02,407 INFO L87 Difference]: Start difference. First operand 54 states and 63 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, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 06:22:04,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:04,724 INFO L93 Difference]: Finished difference Result 66 states and 78 transitions. [2022-04-08 06:22:04,724 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 06:22:04,724 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, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 55 [2022-04-08 06:22:04,724 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:22:04,724 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, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 06:22:04,725 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 58 transitions. [2022-04-08 06:22:04,739 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, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 06:22:04,740 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 58 transitions. [2022-04-08 06:22:04,740 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 58 transitions. [2022-04-08 06:22:04,774 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:22:04,775 INFO L225 Difference]: With dead ends: 66 [2022-04-08 06:22:04,775 INFO L226 Difference]: Without dead ends: 64 [2022-04-08 06:22:04,776 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 110 GetRequests, 98 SyntacticMatches, 2 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=30, Invalid=102, Unknown=0, NotChecked=0, Total=132 [2022-04-08 06:22:04,776 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 8 mSDsluCounter, 88 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 129 SdHoareTripleChecker+Invalid, 51 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:22:04,777 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 129 Invalid, 51 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:22:04,777 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states. [2022-04-08 06:22:04,824 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 61. [2022-04-08 06:22:04,824 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:22:04,825 INFO L82 GeneralOperation]: Start isEquivalent. First operand 64 states. Second operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 37 states have internal predecessors, (39), 17 states have call successors, (17), 9 states have call predecessors, (17), 8 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 06:22:04,825 INFO L74 IsIncluded]: Start isIncluded. First operand 64 states. Second operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 37 states have internal predecessors, (39), 17 states have call successors, (17), 9 states have call predecessors, (17), 8 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 06:22:04,826 INFO L87 Difference]: Start difference. First operand 64 states. Second operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 37 states have internal predecessors, (39), 17 states have call successors, (17), 9 states have call predecessors, (17), 8 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 06:22:04,828 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:04,828 INFO L93 Difference]: Finished difference Result 64 states and 76 transitions. [2022-04-08 06:22:04,828 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 76 transitions. [2022-04-08 06:22:04,828 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:22:04,828 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:22:04,828 INFO L74 IsIncluded]: Start isIncluded. First operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 37 states have internal predecessors, (39), 17 states have call successors, (17), 9 states have call predecessors, (17), 8 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 64 states. [2022-04-08 06:22:04,829 INFO L87 Difference]: Start difference. First operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 37 states have internal predecessors, (39), 17 states have call successors, (17), 9 states have call predecessors, (17), 8 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 64 states. [2022-04-08 06:22:04,831 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:04,831 INFO L93 Difference]: Finished difference Result 64 states and 76 transitions. [2022-04-08 06:22:04,831 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 76 transitions. [2022-04-08 06:22:04,833 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:22:04,833 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:22:04,833 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:22:04,833 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:22:04,833 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 37 states have internal predecessors, (39), 17 states have call successors, (17), 9 states have call predecessors, (17), 8 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 06:22:04,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 71 transitions. [2022-04-08 06:22:04,835 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 71 transitions. Word has length 55 [2022-04-08 06:22:04,851 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:22:04,851 INFO L478 AbstractCegarLoop]: Abstraction has 61 states and 71 transitions. [2022-04-08 06:22:04,851 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, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 06:22:04,851 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 61 states and 71 transitions. [2022-04-08 06:22:04,907 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:22:04,907 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 71 transitions. [2022-04-08 06:22:04,908 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 63 [2022-04-08 06:22:04,908 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:22:04,908 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:22:04,956 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:22:05,108 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:22:05,109 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:22:05,109 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:22:05,109 INFO L85 PathProgramCache]: Analyzing trace with hash -1784683007, now seen corresponding path program 1 times [2022-04-08 06:22:05,109 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:22:05,109 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [64599930] [2022-04-08 06:22:05,109 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:22:05,109 INFO L85 PathProgramCache]: Analyzing trace with hash -1784683007, now seen corresponding path program 2 times [2022-04-08 06:22:05,110 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:22:05,110 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1658988358] [2022-04-08 06:22:05,110 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:22:05,110 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:22:05,119 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:22:05,119 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [39198942] [2022-04-08 06:22:05,119 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:22:05,119 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:22:05,119 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:22:05,140 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:22:05,154 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:22:05,190 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:22:05,190 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:22:05,191 INFO L263 TraceCheckSpWp]: Trace formula consists of 150 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 06:22:05,230 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:22:05,231 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:22:08,533 INFO L272 TraceCheckUtils]: 0: Hoare triple {2770#true} call ULTIMATE.init(); {2770#true} is VALID [2022-04-08 06:22:08,533 INFO L290 TraceCheckUtils]: 1: Hoare triple {2770#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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); {2770#true} is VALID [2022-04-08 06:22:08,534 INFO L290 TraceCheckUtils]: 2: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:08,534 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2770#true} {2770#true} #101#return; {2770#true} is VALID [2022-04-08 06:22:08,534 INFO L272 TraceCheckUtils]: 4: Hoare triple {2770#true} call #t~ret6 := main(); {2770#true} is VALID [2022-04-08 06:22:08,534 INFO L290 TraceCheckUtils]: 5: Hoare triple {2770#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; {2770#true} is VALID [2022-04-08 06:22:08,534 INFO L272 TraceCheckUtils]: 6: Hoare triple {2770#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {2770#true} is VALID [2022-04-08 06:22:08,534 INFO L290 TraceCheckUtils]: 7: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:08,534 INFO L290 TraceCheckUtils]: 8: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:08,534 INFO L290 TraceCheckUtils]: 9: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:08,534 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2770#true} {2770#true} #81#return; {2770#true} is VALID [2022-04-08 06:22:08,535 INFO L290 TraceCheckUtils]: 11: Hoare triple {2770#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2770#true} is VALID [2022-04-08 06:22:08,535 INFO L272 TraceCheckUtils]: 12: Hoare triple {2770#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {2770#true} is VALID [2022-04-08 06:22:08,535 INFO L290 TraceCheckUtils]: 13: Hoare triple {2770#true} ~cond := #in~cond; {2814#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 06:22:08,535 INFO L290 TraceCheckUtils]: 14: Hoare triple {2814#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2818#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:22:08,536 INFO L290 TraceCheckUtils]: 15: Hoare triple {2818#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2818#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:22:08,536 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2818#(not (= |assume_abort_if_not_#in~cond| 0))} {2770#true} #83#return; {2825#(<= (mod main_~B~0 4294967296) 1)} is VALID [2022-04-08 06:22:08,536 INFO L272 TraceCheckUtils]: 17: Hoare triple {2825#(<= (mod main_~B~0 4294967296) 1)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2770#true} is VALID [2022-04-08 06:22:08,537 INFO L290 TraceCheckUtils]: 18: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:08,537 INFO L290 TraceCheckUtils]: 19: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:08,537 INFO L290 TraceCheckUtils]: 20: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:08,537 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2770#true} {2825#(<= (mod main_~B~0 4294967296) 1)} #85#return; {2825#(<= (mod main_~B~0 4294967296) 1)} is VALID [2022-04-08 06:22:08,538 INFO L290 TraceCheckUtils]: 22: Hoare triple {2825#(<= (mod main_~B~0 4294967296) 1)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {2844#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0))} is VALID [2022-04-08 06:22:08,538 INFO L290 TraceCheckUtils]: 23: Hoare triple {2844#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0))} assume !false; {2844#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0))} is VALID [2022-04-08 06:22:08,538 INFO L272 TraceCheckUtils]: 24: Hoare triple {2844#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {2770#true} is VALID [2022-04-08 06:22:08,539 INFO L290 TraceCheckUtils]: 25: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:08,539 INFO L290 TraceCheckUtils]: 26: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:08,539 INFO L290 TraceCheckUtils]: 27: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:08,539 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2770#true} {2844#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0))} #87#return; {2844#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0))} is VALID [2022-04-08 06:22:08,539 INFO L272 TraceCheckUtils]: 29: Hoare triple {2844#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {2770#true} is VALID [2022-04-08 06:22:08,539 INFO L290 TraceCheckUtils]: 30: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:08,540 INFO L290 TraceCheckUtils]: 31: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:08,540 INFO L290 TraceCheckUtils]: 32: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:08,540 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2770#true} {2844#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0))} #89#return; {2844#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0))} is VALID [2022-04-08 06:22:08,540 INFO L272 TraceCheckUtils]: 34: Hoare triple {2844#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {2770#true} is VALID [2022-04-08 06:22:08,540 INFO L290 TraceCheckUtils]: 35: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:08,541 INFO L290 TraceCheckUtils]: 36: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:08,541 INFO L290 TraceCheckUtils]: 37: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:08,541 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2770#true} {2844#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0))} #91#return; {2844#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0))} is VALID [2022-04-08 06:22:08,542 INFO L290 TraceCheckUtils]: 39: Hoare triple {2844#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {2896#(and (<= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:08,543 INFO L290 TraceCheckUtils]: 40: Hoare triple {2896#(and (<= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !false; {2896#(and (<= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:08,543 INFO L272 TraceCheckUtils]: 41: Hoare triple {2896#(and (<= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {2770#true} is VALID [2022-04-08 06:22:08,543 INFO L290 TraceCheckUtils]: 42: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:08,543 INFO L290 TraceCheckUtils]: 43: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:08,543 INFO L290 TraceCheckUtils]: 44: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:08,544 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2770#true} {2896#(and (<= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #87#return; {2896#(and (<= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:08,544 INFO L272 TraceCheckUtils]: 46: Hoare triple {2896#(and (<= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= 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)); {2770#true} is VALID [2022-04-08 06:22:08,544 INFO L290 TraceCheckUtils]: 47: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:08,544 INFO L290 TraceCheckUtils]: 48: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:08,544 INFO L290 TraceCheckUtils]: 49: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:08,545 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2770#true} {2896#(and (<= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #89#return; {2896#(and (<= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:08,545 INFO L272 TraceCheckUtils]: 51: Hoare triple {2896#(and (<= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= 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)); {2770#true} is VALID [2022-04-08 06:22:08,545 INFO L290 TraceCheckUtils]: 52: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:08,545 INFO L290 TraceCheckUtils]: 53: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:08,545 INFO L290 TraceCheckUtils]: 54: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:08,546 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {2770#true} {2896#(and (<= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #91#return; {2896#(and (<= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:08,547 INFO L290 TraceCheckUtils]: 56: Hoare triple {2896#(and (<= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !(~r~0 >= ~d~0); {2948#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~r~0 (* 2 (mod main_~B~0 4294967296))) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:08,548 INFO L290 TraceCheckUtils]: 57: Hoare triple {2948#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~r~0 (* 2 (mod main_~B~0 4294967296))) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !false; {2948#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~r~0 (* 2 (mod main_~B~0 4294967296))) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:08,548 INFO L272 TraceCheckUtils]: 58: Hoare triple {2948#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~r~0 (* 2 (mod main_~B~0 4294967296))) (<= (mod main_~B~0 4294967296) 1) (= 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)); {2955#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:22:08,549 INFO L290 TraceCheckUtils]: 59: Hoare triple {2955#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2959#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:22:08,549 INFO L290 TraceCheckUtils]: 60: Hoare triple {2959#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2771#false} is VALID [2022-04-08 06:22:08,549 INFO L290 TraceCheckUtils]: 61: Hoare triple {2771#false} assume !false; {2771#false} is VALID [2022-04-08 06:22:08,550 INFO L134 CoverageAnalysis]: Checked inductivity of 89 backedges. 15 proven. 8 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2022-04-08 06:22:08,550 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:22:09,870 INFO L290 TraceCheckUtils]: 61: Hoare triple {2771#false} assume !false; {2771#false} is VALID [2022-04-08 06:22:09,870 INFO L290 TraceCheckUtils]: 60: Hoare triple {2959#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2771#false} is VALID [2022-04-08 06:22:09,871 INFO L290 TraceCheckUtils]: 59: Hoare triple {2955#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2959#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:22:09,871 INFO L272 TraceCheckUtils]: 58: Hoare triple {2975#(= (+ 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)); {2955#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:22:09,872 INFO L290 TraceCheckUtils]: 57: Hoare triple {2975#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} assume !false; {2975#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-08 06:22:09,872 INFO L290 TraceCheckUtils]: 56: Hoare triple {2982#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} assume !(~r~0 >= ~d~0); {2975#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-08 06:22:09,873 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {2770#true} {2982#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} #91#return; {2982#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:22:09,873 INFO L290 TraceCheckUtils]: 54: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:09,873 INFO L290 TraceCheckUtils]: 53: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:09,873 INFO L290 TraceCheckUtils]: 52: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:09,873 INFO L272 TraceCheckUtils]: 51: Hoare triple {2982#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~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)); {2770#true} is VALID [2022-04-08 06:22:09,874 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2770#true} {2982#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} #89#return; {2982#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:22:09,874 INFO L290 TraceCheckUtils]: 49: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:09,874 INFO L290 TraceCheckUtils]: 48: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:09,874 INFO L290 TraceCheckUtils]: 47: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:09,874 INFO L272 TraceCheckUtils]: 46: Hoare triple {2982#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {2770#true} is VALID [2022-04-08 06:22:09,874 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2770#true} {2982#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} #87#return; {2982#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:22:09,875 INFO L290 TraceCheckUtils]: 44: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:09,875 INFO L290 TraceCheckUtils]: 43: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:09,875 INFO L290 TraceCheckUtils]: 42: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:09,875 INFO L272 TraceCheckUtils]: 41: Hoare triple {2982#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {2770#true} is VALID [2022-04-08 06:22:09,875 INFO L290 TraceCheckUtils]: 40: Hoare triple {2982#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} assume !false; {2982#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:22:09,876 INFO L290 TraceCheckUtils]: 39: Hoare triple {3034#(or (not (<= main_~d~0 main_~r~0)) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (* main_~d~0 2) main_~r~0))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {2982#(or (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:22:09,877 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2770#true} {3034#(or (not (<= main_~d~0 main_~r~0)) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (* main_~d~0 2) main_~r~0))} #91#return; {3034#(or (not (<= main_~d~0 main_~r~0)) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:22:09,877 INFO L290 TraceCheckUtils]: 37: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:09,877 INFO L290 TraceCheckUtils]: 36: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:09,877 INFO L290 TraceCheckUtils]: 35: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:09,877 INFO L272 TraceCheckUtils]: 34: Hoare triple {3034#(or (not (<= main_~d~0 main_~r~0)) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (* main_~d~0 2) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {2770#true} is VALID [2022-04-08 06:22:09,877 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2770#true} {3034#(or (not (<= main_~d~0 main_~r~0)) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (* main_~d~0 2) main_~r~0))} #89#return; {3034#(or (not (<= main_~d~0 main_~r~0)) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:22:09,878 INFO L290 TraceCheckUtils]: 32: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:09,878 INFO L290 TraceCheckUtils]: 31: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:09,878 INFO L290 TraceCheckUtils]: 30: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:09,878 INFO L272 TraceCheckUtils]: 29: Hoare triple {3034#(or (not (<= main_~d~0 main_~r~0)) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (* main_~d~0 2) main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {2770#true} is VALID [2022-04-08 06:22:09,878 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2770#true} {3034#(or (not (<= main_~d~0 main_~r~0)) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (* main_~d~0 2) main_~r~0))} #87#return; {3034#(or (not (<= main_~d~0 main_~r~0)) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:22:09,878 INFO L290 TraceCheckUtils]: 27: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:09,879 INFO L290 TraceCheckUtils]: 26: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:09,879 INFO L290 TraceCheckUtils]: 25: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:09,879 INFO L272 TraceCheckUtils]: 24: Hoare triple {3034#(or (not (<= main_~d~0 main_~r~0)) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (* main_~d~0 2) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {2770#true} is VALID [2022-04-08 06:22:09,879 INFO L290 TraceCheckUtils]: 23: Hoare triple {3034#(or (not (<= main_~d~0 main_~r~0)) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (* main_~d~0 2) main_~r~0))} assume !false; {3034#(or (not (<= main_~d~0 main_~r~0)) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:22:09,880 INFO L290 TraceCheckUtils]: 22: Hoare triple {2770#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {3034#(or (not (<= main_~d~0 main_~r~0)) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:22:09,880 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2770#true} {2770#true} #85#return; {2770#true} is VALID [2022-04-08 06:22:09,880 INFO L290 TraceCheckUtils]: 20: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:09,880 INFO L290 TraceCheckUtils]: 19: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:09,880 INFO L290 TraceCheckUtils]: 18: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:09,880 INFO L272 TraceCheckUtils]: 17: Hoare triple {2770#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2770#true} is VALID [2022-04-08 06:22:09,880 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2770#true} {2770#true} #83#return; {2770#true} is VALID [2022-04-08 06:22:09,880 INFO L290 TraceCheckUtils]: 15: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:09,880 INFO L290 TraceCheckUtils]: 14: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:09,880 INFO L290 TraceCheckUtils]: 13: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:09,880 INFO L272 TraceCheckUtils]: 12: Hoare triple {2770#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {2770#true} is VALID [2022-04-08 06:22:09,881 INFO L290 TraceCheckUtils]: 11: Hoare triple {2770#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2770#true} is VALID [2022-04-08 06:22:09,881 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2770#true} {2770#true} #81#return; {2770#true} is VALID [2022-04-08 06:22:09,881 INFO L290 TraceCheckUtils]: 9: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:09,881 INFO L290 TraceCheckUtils]: 8: Hoare triple {2770#true} assume !(0 == ~cond); {2770#true} is VALID [2022-04-08 06:22:09,881 INFO L290 TraceCheckUtils]: 7: Hoare triple {2770#true} ~cond := #in~cond; {2770#true} is VALID [2022-04-08 06:22:09,881 INFO L272 TraceCheckUtils]: 6: Hoare triple {2770#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {2770#true} is VALID [2022-04-08 06:22:09,881 INFO L290 TraceCheckUtils]: 5: Hoare triple {2770#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; {2770#true} is VALID [2022-04-08 06:22:09,881 INFO L272 TraceCheckUtils]: 4: Hoare triple {2770#true} call #t~ret6 := main(); {2770#true} is VALID [2022-04-08 06:22:09,881 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2770#true} {2770#true} #101#return; {2770#true} is VALID [2022-04-08 06:22:09,881 INFO L290 TraceCheckUtils]: 2: Hoare triple {2770#true} assume true; {2770#true} is VALID [2022-04-08 06:22:09,881 INFO L290 TraceCheckUtils]: 1: Hoare triple {2770#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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); {2770#true} is VALID [2022-04-08 06:22:09,881 INFO L272 TraceCheckUtils]: 0: Hoare triple {2770#true} call ULTIMATE.init(); {2770#true} is VALID [2022-04-08 06:22:09,882 INFO L134 CoverageAnalysis]: Checked inductivity of 89 backedges. 12 proven. 5 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-08 06:22:09,882 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:22:09,882 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1658988358] [2022-04-08 06:22:09,882 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:22:09,882 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [39198942] [2022-04-08 06:22:09,882 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [39198942] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:22:09,882 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:22:09,882 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 7] total 13 [2022-04-08 06:22:09,882 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:22:09,882 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [64599930] [2022-04-08 06:22:09,883 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [64599930] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:22:09,883 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:22:09,883 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 06:22:09,883 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1114328760] [2022-04-08 06:22:09,883 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:22:09,883 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.2) internal successors, (22), 8 states have internal predecessors, (22), 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 62 [2022-04-08 06:22:09,883 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:22:09,884 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.2) internal successors, (22), 8 states have internal predecessors, (22), 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:22:09,922 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:22:09,922 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 06:22:09,922 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:22:09,923 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 06:22:09,923 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=119, Unknown=0, NotChecked=0, Total=156 [2022-04-08 06:22:09,923 INFO L87 Difference]: Start difference. First operand 61 states and 71 transitions. Second operand has 10 states, 10 states have (on average 2.2) internal successors, (22), 8 states have internal predecessors, (22), 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:22:11,081 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:11,081 INFO L93 Difference]: Finished difference Result 90 states and 108 transitions. [2022-04-08 06:22:11,082 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 06:22:11,082 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.2) internal successors, (22), 8 states have internal predecessors, (22), 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 62 [2022-04-08 06:22:11,082 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:22:11,082 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.2) internal successors, (22), 8 states have internal predecessors, (22), 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:22:11,083 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 77 transitions. [2022-04-08 06:22:11,084 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.2) internal successors, (22), 8 states have internal predecessors, (22), 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:22:11,085 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 77 transitions. [2022-04-08 06:22:11,085 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 77 transitions. [2022-04-08 06:22:11,154 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:22:11,156 INFO L225 Difference]: With dead ends: 90 [2022-04-08 06:22:11,156 INFO L226 Difference]: Without dead ends: 88 [2022-04-08 06:22:11,156 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 126 GetRequests, 111 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=53, Invalid=187, Unknown=0, NotChecked=0, Total=240 [2022-04-08 06:22:11,157 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 28 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 234 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 170 SdHoareTripleChecker+Invalid, 260 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 234 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-08 06:22:11,157 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [34 Valid, 170 Invalid, 260 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 234 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-08 06:22:11,157 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 88 states. [2022-04-08 06:22:11,241 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 88 to 87. [2022-04-08 06:22:11,242 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:22:11,242 INFO L82 GeneralOperation]: Start isEquivalent. First operand 88 states. Second operand has 87 states, 50 states have (on average 1.14) internal successors, (57), 54 states have internal predecessors, (57), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 20 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:22:11,242 INFO L74 IsIncluded]: Start isIncluded. First operand 88 states. Second operand has 87 states, 50 states have (on average 1.14) internal successors, (57), 54 states have internal predecessors, (57), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 20 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:22:11,242 INFO L87 Difference]: Start difference. First operand 88 states. Second operand has 87 states, 50 states have (on average 1.14) internal successors, (57), 54 states have internal predecessors, (57), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 20 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:22:11,245 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:11,245 INFO L93 Difference]: Finished difference Result 88 states and 106 transitions. [2022-04-08 06:22:11,245 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 106 transitions. [2022-04-08 06:22:11,247 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:22:11,247 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:22:11,248 INFO L74 IsIncluded]: Start isIncluded. First operand has 87 states, 50 states have (on average 1.14) internal successors, (57), 54 states have internal predecessors, (57), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 20 states have call predecessors, (23), 23 states have call successors, (23) Second operand 88 states. [2022-04-08 06:22:11,249 INFO L87 Difference]: Start difference. First operand has 87 states, 50 states have (on average 1.14) internal successors, (57), 54 states have internal predecessors, (57), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 20 states have call predecessors, (23), 23 states have call successors, (23) Second operand 88 states. [2022-04-08 06:22:11,251 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:11,251 INFO L93 Difference]: Finished difference Result 88 states and 106 transitions. [2022-04-08 06:22:11,251 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 106 transitions. [2022-04-08 06:22:11,252 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:22:11,252 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:22:11,252 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:22:11,252 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:22:11,253 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 87 states, 50 states have (on average 1.14) internal successors, (57), 54 states have internal predecessors, (57), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 20 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:22:11,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 105 transitions. [2022-04-08 06:22:11,255 INFO L78 Accepts]: Start accepts. Automaton has 87 states and 105 transitions. Word has length 62 [2022-04-08 06:22:11,256 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:22:11,256 INFO L478 AbstractCegarLoop]: Abstraction has 87 states and 105 transitions. [2022-04-08 06:22:11,256 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.2) internal successors, (22), 8 states have internal predecessors, (22), 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:22:11,256 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 87 states and 105 transitions. [2022-04-08 06:22:11,389 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:22:11,390 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 105 transitions. [2022-04-08 06:22:11,390 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-08 06:22:11,390 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:22:11,390 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 3, 3, 3, 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] [2022-04-08 06:22:11,407 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-04-08 06:22:11,591 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:22:11,591 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:22:11,591 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:22:11,591 INFO L85 PathProgramCache]: Analyzing trace with hash 680531353, now seen corresponding path program 1 times [2022-04-08 06:22:11,592 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:22:11,592 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [166052902] [2022-04-08 06:22:11,592 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:22:11,592 INFO L85 PathProgramCache]: Analyzing trace with hash 680531353, now seen corresponding path program 2 times [2022-04-08 06:22:11,592 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:22:11,592 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [393890878] [2022-04-08 06:22:11,592 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:22:11,592 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:22:11,615 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:22:11,615 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2127730754] [2022-04-08 06:22:11,615 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:22:11,615 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:22:11,615 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:22:11,619 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:22:11,624 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:22:11,680 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:22:11,680 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:22:11,681 INFO L263 TraceCheckSpWp]: Trace formula consists of 179 conjuncts, 30 conjunts are in the unsatisfiable core [2022-04-08 06:22:11,694 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:22:11,695 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:22:17,550 INFO L272 TraceCheckUtils]: 0: Hoare triple {3690#true} call ULTIMATE.init(); {3690#true} is VALID [2022-04-08 06:22:17,550 INFO L290 TraceCheckUtils]: 1: Hoare triple {3690#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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); {3690#true} is VALID [2022-04-08 06:22:17,550 INFO L290 TraceCheckUtils]: 2: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:17,550 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3690#true} {3690#true} #101#return; {3690#true} is VALID [2022-04-08 06:22:17,550 INFO L272 TraceCheckUtils]: 4: Hoare triple {3690#true} call #t~ret6 := main(); {3690#true} is VALID [2022-04-08 06:22:17,550 INFO L290 TraceCheckUtils]: 5: Hoare triple {3690#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; {3690#true} is VALID [2022-04-08 06:22:17,550 INFO L272 TraceCheckUtils]: 6: Hoare triple {3690#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {3690#true} is VALID [2022-04-08 06:22:17,550 INFO L290 TraceCheckUtils]: 7: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:17,550 INFO L290 TraceCheckUtils]: 8: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:17,551 INFO L290 TraceCheckUtils]: 9: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:17,551 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3690#true} {3690#true} #81#return; {3690#true} is VALID [2022-04-08 06:22:17,551 INFO L290 TraceCheckUtils]: 11: Hoare triple {3690#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {3690#true} is VALID [2022-04-08 06:22:17,551 INFO L272 TraceCheckUtils]: 12: Hoare triple {3690#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {3690#true} is VALID [2022-04-08 06:22:17,571 INFO L290 TraceCheckUtils]: 13: Hoare triple {3690#true} ~cond := #in~cond; {3734#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 06:22:17,571 INFO L290 TraceCheckUtils]: 14: Hoare triple {3734#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3738#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:22:17,572 INFO L290 TraceCheckUtils]: 15: Hoare triple {3738#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3738#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:22:17,572 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3738#(not (= |assume_abort_if_not_#in~cond| 0))} {3690#true} #83#return; {3745#(<= (mod main_~B~0 4294967296) 1)} is VALID [2022-04-08 06:22:17,572 INFO L272 TraceCheckUtils]: 17: Hoare triple {3745#(<= (mod main_~B~0 4294967296) 1)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {3690#true} is VALID [2022-04-08 06:22:17,572 INFO L290 TraceCheckUtils]: 18: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:17,572 INFO L290 TraceCheckUtils]: 19: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:17,573 INFO L290 TraceCheckUtils]: 20: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:17,573 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3690#true} {3745#(<= (mod main_~B~0 4294967296) 1)} #85#return; {3745#(<= (mod main_~B~0 4294967296) 1)} is VALID [2022-04-08 06:22:17,573 INFO L290 TraceCheckUtils]: 22: Hoare triple {3745#(<= (mod main_~B~0 4294967296) 1)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {3764#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:22:17,574 INFO L290 TraceCheckUtils]: 23: Hoare triple {3764#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {3764#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:22:17,574 INFO L272 TraceCheckUtils]: 24: Hoare triple {3764#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {3690#true} is VALID [2022-04-08 06:22:17,574 INFO L290 TraceCheckUtils]: 25: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:17,574 INFO L290 TraceCheckUtils]: 26: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:17,574 INFO L290 TraceCheckUtils]: 27: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:17,574 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3690#true} {3764#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (= main_~p~0 1))} #87#return; {3764#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:22:17,574 INFO L272 TraceCheckUtils]: 29: Hoare triple {3764#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {3690#true} is VALID [2022-04-08 06:22:17,574 INFO L290 TraceCheckUtils]: 30: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:17,575 INFO L290 TraceCheckUtils]: 31: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:17,575 INFO L290 TraceCheckUtils]: 32: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:17,575 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {3690#true} {3764#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (= main_~p~0 1))} #89#return; {3764#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:22:17,575 INFO L272 TraceCheckUtils]: 34: Hoare triple {3764#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {3690#true} is VALID [2022-04-08 06:22:17,575 INFO L290 TraceCheckUtils]: 35: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:17,575 INFO L290 TraceCheckUtils]: 36: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:17,575 INFO L290 TraceCheckUtils]: 37: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:17,576 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {3690#true} {3764#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (= main_~p~0 1))} #91#return; {3764#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:22:17,577 INFO L290 TraceCheckUtils]: 39: Hoare triple {3764#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {3816#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:17,577 INFO L290 TraceCheckUtils]: 40: Hoare triple {3816#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !false; {3816#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:17,577 INFO L272 TraceCheckUtils]: 41: Hoare triple {3816#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {3690#true} is VALID [2022-04-08 06:22:17,577 INFO L290 TraceCheckUtils]: 42: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:17,578 INFO L290 TraceCheckUtils]: 43: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:17,578 INFO L290 TraceCheckUtils]: 44: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:17,578 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3690#true} {3816#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #87#return; {3816#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:17,578 INFO L272 TraceCheckUtils]: 46: Hoare triple {3816#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (= 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)); {3690#true} is VALID [2022-04-08 06:22:17,578 INFO L290 TraceCheckUtils]: 47: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:17,578 INFO L290 TraceCheckUtils]: 48: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:17,578 INFO L290 TraceCheckUtils]: 49: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:17,579 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3690#true} {3816#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #89#return; {3816#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:17,579 INFO L272 TraceCheckUtils]: 51: Hoare triple {3816#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (= 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)); {3690#true} is VALID [2022-04-08 06:22:17,579 INFO L290 TraceCheckUtils]: 52: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:17,579 INFO L290 TraceCheckUtils]: 53: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:17,579 INFO L290 TraceCheckUtils]: 54: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:17,580 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {3690#true} {3816#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #91#return; {3816#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:17,580 INFO L290 TraceCheckUtils]: 56: Hoare triple {3816#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !(~r~0 >= ~d~0); {3868#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (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:22:17,580 INFO L290 TraceCheckUtils]: 57: Hoare triple {3868#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !false; {3868#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (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:22:17,580 INFO L272 TraceCheckUtils]: 58: Hoare triple {3868#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (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)); {3690#true} is VALID [2022-04-08 06:22:17,581 INFO L290 TraceCheckUtils]: 59: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:17,581 INFO L290 TraceCheckUtils]: 60: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:17,581 INFO L290 TraceCheckUtils]: 61: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:17,581 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {3690#true} {3868#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #93#return; {3868#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (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:22:17,581 INFO L272 TraceCheckUtils]: 63: Hoare triple {3868#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (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)); {3690#true} is VALID [2022-04-08 06:22:17,582 INFO L290 TraceCheckUtils]: 64: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:17,582 INFO L290 TraceCheckUtils]: 65: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:17,582 INFO L290 TraceCheckUtils]: 66: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:17,582 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {3690#true} {3868#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #95#return; {3868#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (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:22:17,584 INFO L290 TraceCheckUtils]: 68: Hoare triple {3868#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (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); {3905#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= 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:22:17,585 INFO L290 TraceCheckUtils]: 69: Hoare triple {3905#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~B~0 4294967296) 1) (= 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; {3909#(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) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 1))} is VALID [2022-04-08 06:22:17,585 INFO L290 TraceCheckUtils]: 70: Hoare triple {3909#(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) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 1))} assume !false; {3909#(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) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 1))} is VALID [2022-04-08 06:22:17,586 INFO L272 TraceCheckUtils]: 71: Hoare triple {3909#(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) (<= (mod main_~B~0 4294967296) 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {3916#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:22:17,586 INFO L290 TraceCheckUtils]: 72: Hoare triple {3916#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3920#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:22:17,586 INFO L290 TraceCheckUtils]: 73: Hoare triple {3920#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3691#false} is VALID [2022-04-08 06:22:17,586 INFO L290 TraceCheckUtils]: 74: Hoare triple {3691#false} assume !false; {3691#false} is VALID [2022-04-08 06:22:17,587 INFO L134 CoverageAnalysis]: Checked inductivity of 147 backedges. 19 proven. 10 refuted. 0 times theorem prover too weak. 118 trivial. 0 not checked. [2022-04-08 06:22:17,587 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:22:24,396 INFO L290 TraceCheckUtils]: 74: Hoare triple {3691#false} assume !false; {3691#false} is VALID [2022-04-08 06:22:24,397 INFO L290 TraceCheckUtils]: 73: Hoare triple {3920#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3691#false} is VALID [2022-04-08 06:22:24,397 INFO L290 TraceCheckUtils]: 72: Hoare triple {3916#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3920#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:22:24,398 INFO L272 TraceCheckUtils]: 71: Hoare triple {3936#(= (+ 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)); {3916#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:22:24,398 INFO L290 TraceCheckUtils]: 70: Hoare triple {3936#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} assume !false; {3936#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-08 06:22:24,401 INFO L290 TraceCheckUtils]: 69: Hoare triple {3943#(= (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; {3936#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-08 06:22:24,417 INFO L290 TraceCheckUtils]: 68: Hoare triple {3947#(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); {3943#(= (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:22:24,417 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {3690#true} {3947#(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)))))} #95#return; {3947#(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:22:24,417 INFO L290 TraceCheckUtils]: 66: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:24,418 INFO L290 TraceCheckUtils]: 65: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:24,418 INFO L290 TraceCheckUtils]: 64: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:24,418 INFO L272 TraceCheckUtils]: 63: Hoare triple {3947#(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)); {3690#true} is VALID [2022-04-08 06:22:24,419 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {3690#true} {3947#(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)))))} #93#return; {3947#(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:22:24,419 INFO L290 TraceCheckUtils]: 61: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:24,419 INFO L290 TraceCheckUtils]: 60: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:24,419 INFO L290 TraceCheckUtils]: 59: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:24,419 INFO L272 TraceCheckUtils]: 58: Hoare triple {3947#(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)); {3690#true} is VALID [2022-04-08 06:22:24,420 INFO L290 TraceCheckUtils]: 57: Hoare triple {3947#(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 !false; {3947#(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:22:24,421 INFO L290 TraceCheckUtils]: 56: Hoare triple {3984#(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); {3947#(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:22:24,422 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {3690#true} {3984#(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))} #91#return; {3984#(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:22:24,422 INFO L290 TraceCheckUtils]: 54: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:24,422 INFO L290 TraceCheckUtils]: 53: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:24,423 INFO L290 TraceCheckUtils]: 52: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:24,423 INFO L272 TraceCheckUtils]: 51: Hoare triple {3984#(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)); {3690#true} is VALID [2022-04-08 06:22:24,423 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3690#true} {3984#(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))} #89#return; {3984#(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:22:24,424 INFO L290 TraceCheckUtils]: 49: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:24,424 INFO L290 TraceCheckUtils]: 48: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:24,424 INFO L290 TraceCheckUtils]: 47: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:24,424 INFO L272 TraceCheckUtils]: 46: Hoare triple {3984#(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)); {3690#true} is VALID [2022-04-08 06:22:24,425 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3690#true} {3984#(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))} #87#return; {3984#(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:22:24,425 INFO L290 TraceCheckUtils]: 44: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:24,425 INFO L290 TraceCheckUtils]: 43: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:24,425 INFO L290 TraceCheckUtils]: 42: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:24,425 INFO L272 TraceCheckUtils]: 41: Hoare triple {3984#(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)); {3690#true} is VALID [2022-04-08 06:22:24,426 INFO L290 TraceCheckUtils]: 40: Hoare triple {3984#(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 !false; {3984#(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:22:24,431 INFO L290 TraceCheckUtils]: 39: Hoare triple {4036#(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; {3984#(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:22:24,431 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {3690#true} {4036#(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))} #91#return; {4036#(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:22:24,431 INFO L290 TraceCheckUtils]: 37: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:24,432 INFO L290 TraceCheckUtils]: 36: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:24,432 INFO L290 TraceCheckUtils]: 35: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:24,432 INFO L272 TraceCheckUtils]: 34: Hoare triple {4036#(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)); {3690#true} is VALID [2022-04-08 06:22:24,432 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {3690#true} {4036#(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))} #89#return; {4036#(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:22:24,433 INFO L290 TraceCheckUtils]: 32: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:24,433 INFO L290 TraceCheckUtils]: 31: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:24,433 INFO L290 TraceCheckUtils]: 30: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:24,433 INFO L272 TraceCheckUtils]: 29: Hoare triple {4036#(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)); {3690#true} is VALID [2022-04-08 06:22:24,434 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3690#true} {4036#(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))} #87#return; {4036#(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:22:24,434 INFO L290 TraceCheckUtils]: 27: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:24,434 INFO L290 TraceCheckUtils]: 26: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:24,434 INFO L290 TraceCheckUtils]: 25: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:24,434 INFO L272 TraceCheckUtils]: 24: Hoare triple {4036#(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)); {3690#true} is VALID [2022-04-08 06:22:24,435 INFO L290 TraceCheckUtils]: 23: Hoare triple {4036#(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 !false; {4036#(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:22:24,436 INFO L290 TraceCheckUtils]: 22: Hoare triple {3690#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {4036#(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:22:24,436 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3690#true} {3690#true} #85#return; {3690#true} is VALID [2022-04-08 06:22:24,436 INFO L290 TraceCheckUtils]: 20: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:24,436 INFO L290 TraceCheckUtils]: 19: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:24,437 INFO L290 TraceCheckUtils]: 18: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:24,437 INFO L272 TraceCheckUtils]: 17: Hoare triple {3690#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {3690#true} is VALID [2022-04-08 06:22:24,437 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3690#true} {3690#true} #83#return; {3690#true} is VALID [2022-04-08 06:22:24,437 INFO L290 TraceCheckUtils]: 15: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:24,437 INFO L290 TraceCheckUtils]: 14: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:24,437 INFO L290 TraceCheckUtils]: 13: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:24,437 INFO L272 TraceCheckUtils]: 12: Hoare triple {3690#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {3690#true} is VALID [2022-04-08 06:22:24,437 INFO L290 TraceCheckUtils]: 11: Hoare triple {3690#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {3690#true} is VALID [2022-04-08 06:22:24,437 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3690#true} {3690#true} #81#return; {3690#true} is VALID [2022-04-08 06:22:24,437 INFO L290 TraceCheckUtils]: 9: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:24,438 INFO L290 TraceCheckUtils]: 8: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:22:24,438 INFO L290 TraceCheckUtils]: 7: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:22:24,438 INFO L272 TraceCheckUtils]: 6: Hoare triple {3690#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {3690#true} is VALID [2022-04-08 06:22:24,438 INFO L290 TraceCheckUtils]: 5: Hoare triple {3690#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; {3690#true} is VALID [2022-04-08 06:22:24,438 INFO L272 TraceCheckUtils]: 4: Hoare triple {3690#true} call #t~ret6 := main(); {3690#true} is VALID [2022-04-08 06:22:24,438 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3690#true} {3690#true} #101#return; {3690#true} is VALID [2022-04-08 06:22:24,438 INFO L290 TraceCheckUtils]: 2: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:22:24,438 INFO L290 TraceCheckUtils]: 1: Hoare triple {3690#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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); {3690#true} is VALID [2022-04-08 06:22:24,438 INFO L272 TraceCheckUtils]: 0: Hoare triple {3690#true} call ULTIMATE.init(); {3690#true} is VALID [2022-04-08 06:22:24,439 INFO L134 CoverageAnalysis]: Checked inductivity of 147 backedges. 16 proven. 7 refuted. 0 times theorem prover too weak. 124 trivial. 0 not checked. [2022-04-08 06:22:24,439 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:22:24,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [393890878] [2022-04-08 06:22:24,439 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:22:24,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2127730754] [2022-04-08 06:22:24,440 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2127730754] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:22:24,440 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:22:24,440 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 9] total 17 [2022-04-08 06:22:24,440 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:22:24,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [166052902] [2022-04-08 06:22:24,440 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [166052902] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:22:24,440 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:22:24,440 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-08 06:22:24,440 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [308445540] [2022-04-08 06:22:24,441 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:22:24,441 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 6 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) Word has length 75 [2022-04-08 06:22:24,441 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:22:24,442 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 6 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 06:22:24,492 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:22:24,492 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-08 06:22:24,492 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:22:24,492 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-08 06:22:24,492 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=62, Invalid=210, Unknown=0, NotChecked=0, Total=272 [2022-04-08 06:22:24,493 INFO L87 Difference]: Start difference. First operand 87 states and 105 transitions. Second operand has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 6 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 06:22:26,413 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:26,413 INFO L93 Difference]: Finished difference Result 121 states and 148 transitions. [2022-04-08 06:22:26,414 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 06:22:26,414 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 6 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) Word has length 75 [2022-04-08 06:22:26,414 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:22:26,414 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 6 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 06:22:26,415 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 102 transitions. [2022-04-08 06:22:26,416 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 6 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 06:22:26,417 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 102 transitions. [2022-04-08 06:22:26,417 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 102 transitions. [2022-04-08 06:22:26,516 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:22:26,518 INFO L225 Difference]: With dead ends: 121 [2022-04-08 06:22:26,518 INFO L226 Difference]: Without dead ends: 98 [2022-04-08 06:22:26,518 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 151 GetRequests, 133 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 68 ImplicationChecksByTransitivity, 2.3s TimeCoverageRelationStatistics Valid=70, Invalid=272, Unknown=0, NotChecked=0, Total=342 [2022-04-08 06:22:26,519 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 23 mSDsluCounter, 169 mSDsCounter, 0 mSdLazyCounter, 345 mSolverCounterSat, 22 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 214 SdHoareTripleChecker+Invalid, 367 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 22 IncrementalHoareTripleChecker+Valid, 345 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-08 06:22:26,519 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [32 Valid, 214 Invalid, 367 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [22 Valid, 345 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-08 06:22:26,519 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-08 06:22:26,612 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 96. [2022-04-08 06:22:26,612 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:22:26,613 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 96 states, 58 states have (on average 1.1206896551724137) internal successors, (65), 60 states have internal predecessors, (65), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-08 06:22:26,613 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 96 states, 58 states have (on average 1.1206896551724137) internal successors, (65), 60 states have internal predecessors, (65), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-08 06:22:26,613 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 96 states, 58 states have (on average 1.1206896551724137) internal successors, (65), 60 states have internal predecessors, (65), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-08 06:22:26,615 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:26,615 INFO L93 Difference]: Finished difference Result 98 states and 114 transitions. [2022-04-08 06:22:26,615 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 114 transitions. [2022-04-08 06:22:26,616 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:22:26,616 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:22:26,616 INFO L74 IsIncluded]: Start isIncluded. First operand has 96 states, 58 states have (on average 1.1206896551724137) internal successors, (65), 60 states have internal predecessors, (65), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) Second operand 98 states. [2022-04-08 06:22:26,616 INFO L87 Difference]: Start difference. First operand has 96 states, 58 states have (on average 1.1206896551724137) internal successors, (65), 60 states have internal predecessors, (65), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) Second operand 98 states. [2022-04-08 06:22:26,618 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:26,618 INFO L93 Difference]: Finished difference Result 98 states and 114 transitions. [2022-04-08 06:22:26,618 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 114 transitions. [2022-04-08 06:22:26,618 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:22:26,619 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:22:26,619 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:22:26,619 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:22:26,619 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 96 states, 58 states have (on average 1.1206896551724137) internal successors, (65), 60 states have internal predecessors, (65), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 21 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-08 06:22:26,621 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 111 transitions. [2022-04-08 06:22:26,621 INFO L78 Accepts]: Start accepts. Automaton has 96 states and 111 transitions. Word has length 75 [2022-04-08 06:22:26,622 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:22:26,622 INFO L478 AbstractCegarLoop]: Abstraction has 96 states and 111 transitions. [2022-04-08 06:22:26,622 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 10 states have internal predecessors, (25), 6 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 06:22:26,622 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 96 states and 111 transitions. [2022-04-08 06:22:26,755 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:22:26,756 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 111 transitions. [2022-04-08 06:22:26,756 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-08 06:22:26,756 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:22:26,756 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:22:26,773 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:22:26,957 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:22:26,957 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:22:26,957 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:22:26,957 INFO L85 PathProgramCache]: Analyzing trace with hash -1211630783, now seen corresponding path program 3 times [2022-04-08 06:22:26,958 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:22:26,958 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [431323995] [2022-04-08 06:22:26,958 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:22:26,958 INFO L85 PathProgramCache]: Analyzing trace with hash -1211630783, now seen corresponding path program 4 times [2022-04-08 06:22:26,958 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:22:26,958 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1440992149] [2022-04-08 06:22:26,958 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:22:26,958 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:22:26,973 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:22:26,973 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1716404881] [2022-04-08 06:22:26,974 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:22:26,974 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:22:26,974 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:22:26,995 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:22:27,002 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:22:27,050 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:22:27,050 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:22:27,051 INFO L263 TraceCheckSpWp]: Trace formula consists of 183 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-08 06:22:27,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:22:27,063 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:22:31,210 INFO L272 TraceCheckUtils]: 0: Hoare triple {4790#true} call ULTIMATE.init(); {4790#true} is VALID [2022-04-08 06:22:31,210 INFO L290 TraceCheckUtils]: 1: Hoare triple {4790#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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); {4790#true} is VALID [2022-04-08 06:22:31,210 INFO L290 TraceCheckUtils]: 2: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,210 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4790#true} {4790#true} #101#return; {4790#true} is VALID [2022-04-08 06:22:31,211 INFO L272 TraceCheckUtils]: 4: Hoare triple {4790#true} call #t~ret6 := main(); {4790#true} is VALID [2022-04-08 06:22:31,211 INFO L290 TraceCheckUtils]: 5: Hoare triple {4790#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; {4790#true} is VALID [2022-04-08 06:22:31,211 INFO L272 TraceCheckUtils]: 6: Hoare triple {4790#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,211 INFO L290 TraceCheckUtils]: 7: Hoare triple {4790#true} ~cond := #in~cond; {4816#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 06:22:31,211 INFO L290 TraceCheckUtils]: 8: Hoare triple {4816#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4820#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:22:31,211 INFO L290 TraceCheckUtils]: 9: Hoare triple {4820#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4820#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:22:31,212 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4820#(not (= |assume_abort_if_not_#in~cond| 0))} {4790#true} #81#return; {4827#(<= (mod main_~A~0 4294967296) 1)} is VALID [2022-04-08 06:22:31,212 INFO L290 TraceCheckUtils]: 11: Hoare triple {4827#(<= (mod main_~A~0 4294967296) 1)} ~B~0 := #t~nondet5;havoc #t~nondet5; {4827#(<= (mod main_~A~0 4294967296) 1)} is VALID [2022-04-08 06:22:31,212 INFO L272 TraceCheckUtils]: 12: Hoare triple {4827#(<= (mod main_~A~0 4294967296) 1)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,212 INFO L290 TraceCheckUtils]: 13: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,212 INFO L290 TraceCheckUtils]: 14: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,212 INFO L290 TraceCheckUtils]: 15: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,212 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4790#true} {4827#(<= (mod main_~A~0 4294967296) 1)} #83#return; {4827#(<= (mod main_~A~0 4294967296) 1)} is VALID [2022-04-08 06:22:31,213 INFO L272 TraceCheckUtils]: 17: Hoare triple {4827#(<= (mod main_~A~0 4294967296) 1)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,213 INFO L290 TraceCheckUtils]: 18: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,213 INFO L290 TraceCheckUtils]: 19: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,213 INFO L290 TraceCheckUtils]: 20: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,213 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4790#true} {4827#(<= (mod main_~A~0 4294967296) 1)} #85#return; {4827#(<= (mod main_~A~0 4294967296) 1)} is VALID [2022-04-08 06:22:31,215 INFO L290 TraceCheckUtils]: 22: Hoare triple {4827#(<= (mod main_~A~0 4294967296) 1)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {4864#(and (< main_~d~0 4294967296) (<= 0 main_~d~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} is VALID [2022-04-08 06:22:31,215 INFO L290 TraceCheckUtils]: 23: Hoare triple {4864#(and (< main_~d~0 4294967296) (<= 0 main_~d~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} assume !false; {4864#(and (< main_~d~0 4294967296) (<= 0 main_~d~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} is VALID [2022-04-08 06:22:31,215 INFO L272 TraceCheckUtils]: 24: Hoare triple {4864#(and (< main_~d~0 4294967296) (<= 0 main_~d~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,215 INFO L290 TraceCheckUtils]: 25: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,216 INFO L290 TraceCheckUtils]: 26: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,216 INFO L290 TraceCheckUtils]: 27: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,216 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4790#true} {4864#(and (< main_~d~0 4294967296) (<= 0 main_~d~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} #87#return; {4864#(and (< main_~d~0 4294967296) (<= 0 main_~d~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} is VALID [2022-04-08 06:22:31,216 INFO L272 TraceCheckUtils]: 29: Hoare triple {4864#(and (< main_~d~0 4294967296) (<= 0 main_~d~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,216 INFO L290 TraceCheckUtils]: 30: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,216 INFO L290 TraceCheckUtils]: 31: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,216 INFO L290 TraceCheckUtils]: 32: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,216 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {4790#true} {4864#(and (< main_~d~0 4294967296) (<= 0 main_~d~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} #89#return; {4864#(and (< main_~d~0 4294967296) (<= 0 main_~d~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} is VALID [2022-04-08 06:22:31,217 INFO L272 TraceCheckUtils]: 34: Hoare triple {4864#(and (< main_~d~0 4294967296) (<= 0 main_~d~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,217 INFO L290 TraceCheckUtils]: 35: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,217 INFO L290 TraceCheckUtils]: 36: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,217 INFO L290 TraceCheckUtils]: 37: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,217 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {4790#true} {4864#(and (< main_~d~0 4294967296) (<= 0 main_~d~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} #91#return; {4864#(and (< main_~d~0 4294967296) (<= 0 main_~d~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} is VALID [2022-04-08 06:22:31,218 INFO L290 TraceCheckUtils]: 39: Hoare triple {4864#(and (< main_~d~0 4294967296) (<= 0 main_~d~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {4916#(and (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} is VALID [2022-04-08 06:22:31,218 INFO L290 TraceCheckUtils]: 40: Hoare triple {4916#(and (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} assume !false; {4916#(and (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} is VALID [2022-04-08 06:22:31,218 INFO L272 TraceCheckUtils]: 41: Hoare triple {4916#(and (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,218 INFO L290 TraceCheckUtils]: 42: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,219 INFO L290 TraceCheckUtils]: 43: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,219 INFO L290 TraceCheckUtils]: 44: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,219 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4790#true} {4916#(and (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} #87#return; {4916#(and (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} is VALID [2022-04-08 06:22:31,219 INFO L272 TraceCheckUtils]: 46: Hoare triple {4916#(and (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,219 INFO L290 TraceCheckUtils]: 47: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,219 INFO L290 TraceCheckUtils]: 48: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,219 INFO L290 TraceCheckUtils]: 49: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,219 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4790#true} {4916#(and (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} #89#return; {4916#(and (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} is VALID [2022-04-08 06:22:31,220 INFO L272 TraceCheckUtils]: 51: Hoare triple {4916#(and (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,220 INFO L290 TraceCheckUtils]: 52: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,220 INFO L290 TraceCheckUtils]: 53: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,220 INFO L290 TraceCheckUtils]: 54: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,220 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {4790#true} {4916#(and (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} #91#return; {4916#(and (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} is VALID [2022-04-08 06:22:31,222 INFO L290 TraceCheckUtils]: 56: Hoare triple {4916#(and (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {4968#(and (<= (div main_~r~0 (- 2)) (div (* (- 1) main_~d~0) 4)) (< (div main_~r~0 (- 2)) 1) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} is VALID [2022-04-08 06:22:31,222 INFO L290 TraceCheckUtils]: 57: Hoare triple {4968#(and (<= (div main_~r~0 (- 2)) (div (* (- 1) main_~d~0) 4)) (< (div main_~r~0 (- 2)) 1) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} assume !false; {4968#(and (<= (div main_~r~0 (- 2)) (div (* (- 1) main_~d~0) 4)) (< (div main_~r~0 (- 2)) 1) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} is VALID [2022-04-08 06:22:31,222 INFO L272 TraceCheckUtils]: 58: Hoare triple {4968#(and (<= (div main_~r~0 (- 2)) (div (* (- 1) main_~d~0) 4)) (< (div main_~r~0 (- 2)) 1) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,222 INFO L290 TraceCheckUtils]: 59: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,222 INFO L290 TraceCheckUtils]: 60: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,223 INFO L290 TraceCheckUtils]: 61: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,223 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {4790#true} {4968#(and (<= (div main_~r~0 (- 2)) (div (* (- 1) main_~d~0) 4)) (< (div main_~r~0 (- 2)) 1) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} #87#return; {4968#(and (<= (div main_~r~0 (- 2)) (div (* (- 1) main_~d~0) 4)) (< (div main_~r~0 (- 2)) 1) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} is VALID [2022-04-08 06:22:31,223 INFO L272 TraceCheckUtils]: 63: Hoare triple {4968#(and (<= (div main_~r~0 (- 2)) (div (* (- 1) main_~d~0) 4)) (< (div main_~r~0 (- 2)) 1) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,223 INFO L290 TraceCheckUtils]: 64: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,223 INFO L290 TraceCheckUtils]: 65: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,223 INFO L290 TraceCheckUtils]: 66: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,224 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {4790#true} {4968#(and (<= (div main_~r~0 (- 2)) (div (* (- 1) main_~d~0) 4)) (< (div main_~r~0 (- 2)) 1) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} #89#return; {4968#(and (<= (div main_~r~0 (- 2)) (div (* (- 1) main_~d~0) 4)) (< (div main_~r~0 (- 2)) 1) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} is VALID [2022-04-08 06:22:31,224 INFO L272 TraceCheckUtils]: 68: Hoare triple {4968#(and (<= (div main_~r~0 (- 2)) (div (* (- 1) main_~d~0) 4)) (< (div main_~r~0 (- 2)) 1) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,224 INFO L290 TraceCheckUtils]: 69: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,224 INFO L290 TraceCheckUtils]: 70: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,224 INFO L290 TraceCheckUtils]: 71: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,225 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {4790#true} {4968#(and (<= (div main_~r~0 (- 2)) (div (* (- 1) main_~d~0) 4)) (< (div main_~r~0 (- 2)) 1) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} #91#return; {4968#(and (<= (div main_~r~0 (- 2)) (div (* (- 1) main_~d~0) 4)) (< (div main_~r~0 (- 2)) 1) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} is VALID [2022-04-08 06:22:31,225 INFO L290 TraceCheckUtils]: 73: Hoare triple {4968#(and (<= (div main_~r~0 (- 2)) (div (* (- 1) main_~d~0) 4)) (< (div main_~r~0 (- 2)) 1) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))} assume !(~r~0 >= ~d~0); {4791#false} is VALID [2022-04-08 06:22:31,225 INFO L290 TraceCheckUtils]: 74: Hoare triple {4791#false} assume !false; {4791#false} is VALID [2022-04-08 06:22:31,225 INFO L272 TraceCheckUtils]: 75: Hoare triple {4791#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {4791#false} is VALID [2022-04-08 06:22:31,225 INFO L290 TraceCheckUtils]: 76: Hoare triple {4791#false} ~cond := #in~cond; {4791#false} is VALID [2022-04-08 06:22:31,225 INFO L290 TraceCheckUtils]: 77: Hoare triple {4791#false} assume 0 == ~cond; {4791#false} is VALID [2022-04-08 06:22:31,226 INFO L290 TraceCheckUtils]: 78: Hoare triple {4791#false} assume !false; {4791#false} is VALID [2022-04-08 06:22:31,226 INFO L134 CoverageAnalysis]: Checked inductivity of 189 backedges. 23 proven. 16 refuted. 0 times theorem prover too weak. 150 trivial. 0 not checked. [2022-04-08 06:22:31,226 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:22:31,699 INFO L290 TraceCheckUtils]: 78: Hoare triple {4791#false} assume !false; {4791#false} is VALID [2022-04-08 06:22:31,700 INFO L290 TraceCheckUtils]: 77: Hoare triple {4791#false} assume 0 == ~cond; {4791#false} is VALID [2022-04-08 06:22:31,700 INFO L290 TraceCheckUtils]: 76: Hoare triple {4791#false} ~cond := #in~cond; {4791#false} is VALID [2022-04-08 06:22:31,700 INFO L272 TraceCheckUtils]: 75: Hoare triple {4791#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {4791#false} is VALID [2022-04-08 06:22:31,700 INFO L290 TraceCheckUtils]: 74: Hoare triple {4791#false} assume !false; {4791#false} is VALID [2022-04-08 06:22:31,700 INFO L290 TraceCheckUtils]: 73: Hoare triple {5050#(<= main_~d~0 main_~r~0)} assume !(~r~0 >= ~d~0); {4791#false} is VALID [2022-04-08 06:22:31,701 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {4790#true} {5050#(<= main_~d~0 main_~r~0)} #91#return; {5050#(<= main_~d~0 main_~r~0)} is VALID [2022-04-08 06:22:31,701 INFO L290 TraceCheckUtils]: 71: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,701 INFO L290 TraceCheckUtils]: 70: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,701 INFO L290 TraceCheckUtils]: 69: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,701 INFO L272 TraceCheckUtils]: 68: Hoare triple {5050#(<= main_~d~0 main_~r~0)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,701 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {4790#true} {5050#(<= main_~d~0 main_~r~0)} #89#return; {5050#(<= main_~d~0 main_~r~0)} is VALID [2022-04-08 06:22:31,701 INFO L290 TraceCheckUtils]: 66: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,701 INFO L290 TraceCheckUtils]: 65: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,701 INFO L290 TraceCheckUtils]: 64: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,701 INFO L272 TraceCheckUtils]: 63: Hoare triple {5050#(<= main_~d~0 main_~r~0)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,702 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {4790#true} {5050#(<= main_~d~0 main_~r~0)} #87#return; {5050#(<= main_~d~0 main_~r~0)} is VALID [2022-04-08 06:22:31,702 INFO L290 TraceCheckUtils]: 61: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,702 INFO L290 TraceCheckUtils]: 60: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,702 INFO L290 TraceCheckUtils]: 59: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,702 INFO L272 TraceCheckUtils]: 58: Hoare triple {5050#(<= main_~d~0 main_~r~0)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,702 INFO L290 TraceCheckUtils]: 57: Hoare triple {5050#(<= main_~d~0 main_~r~0)} assume !false; {5050#(<= main_~d~0 main_~r~0)} is VALID [2022-04-08 06:22:31,703 INFO L290 TraceCheckUtils]: 56: Hoare triple {5102#(or (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; {5050#(<= main_~d~0 main_~r~0)} is VALID [2022-04-08 06:22:31,703 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {4790#true} {5102#(or (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} #91#return; {5102#(or (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:22:31,703 INFO L290 TraceCheckUtils]: 54: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,703 INFO L290 TraceCheckUtils]: 53: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,703 INFO L290 TraceCheckUtils]: 52: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,704 INFO L272 TraceCheckUtils]: 51: Hoare triple {5102#(or (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)); {4790#true} is VALID [2022-04-08 06:22:31,704 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4790#true} {5102#(or (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} #89#return; {5102#(or (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:22:31,704 INFO L290 TraceCheckUtils]: 49: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,704 INFO L290 TraceCheckUtils]: 48: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,704 INFO L290 TraceCheckUtils]: 47: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,704 INFO L272 TraceCheckUtils]: 46: Hoare triple {5102#(or (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)); {4790#true} is VALID [2022-04-08 06:22:31,704 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4790#true} {5102#(or (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} #87#return; {5102#(or (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:22:31,705 INFO L290 TraceCheckUtils]: 44: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,705 INFO L290 TraceCheckUtils]: 43: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,705 INFO L290 TraceCheckUtils]: 42: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,705 INFO L272 TraceCheckUtils]: 41: Hoare triple {5102#(or (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)); {4790#true} is VALID [2022-04-08 06:22:31,705 INFO L290 TraceCheckUtils]: 40: Hoare triple {5102#(or (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} assume !false; {5102#(or (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:22:31,706 INFO L290 TraceCheckUtils]: 39: Hoare triple {5154#(or (<= (* main_~d~0 4) main_~r~0) (< main_~r~0 (* main_~d~0 2)))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {5102#(or (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:22:31,706 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {4790#true} {5154#(or (<= (* main_~d~0 4) main_~r~0) (< main_~r~0 (* main_~d~0 2)))} #91#return; {5154#(or (<= (* main_~d~0 4) main_~r~0) (< main_~r~0 (* main_~d~0 2)))} is VALID [2022-04-08 06:22:31,706 INFO L290 TraceCheckUtils]: 37: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,706 INFO L290 TraceCheckUtils]: 36: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,706 INFO L290 TraceCheckUtils]: 35: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,706 INFO L272 TraceCheckUtils]: 34: Hoare triple {5154#(or (<= (* main_~d~0 4) main_~r~0) (< main_~r~0 (* main_~d~0 2)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,707 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {4790#true} {5154#(or (<= (* main_~d~0 4) main_~r~0) (< main_~r~0 (* main_~d~0 2)))} #89#return; {5154#(or (<= (* main_~d~0 4) main_~r~0) (< main_~r~0 (* main_~d~0 2)))} is VALID [2022-04-08 06:22:31,707 INFO L290 TraceCheckUtils]: 32: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,707 INFO L290 TraceCheckUtils]: 31: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,707 INFO L290 TraceCheckUtils]: 30: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,707 INFO L272 TraceCheckUtils]: 29: Hoare triple {5154#(or (<= (* main_~d~0 4) main_~r~0) (< main_~r~0 (* main_~d~0 2)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,707 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4790#true} {5154#(or (<= (* main_~d~0 4) main_~r~0) (< main_~r~0 (* main_~d~0 2)))} #87#return; {5154#(or (<= (* main_~d~0 4) main_~r~0) (< main_~r~0 (* main_~d~0 2)))} is VALID [2022-04-08 06:22:31,707 INFO L290 TraceCheckUtils]: 27: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,707 INFO L290 TraceCheckUtils]: 26: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,707 INFO L290 TraceCheckUtils]: 25: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,707 INFO L272 TraceCheckUtils]: 24: Hoare triple {5154#(or (<= (* main_~d~0 4) main_~r~0) (< main_~r~0 (* main_~d~0 2)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,708 INFO L290 TraceCheckUtils]: 23: Hoare triple {5154#(or (<= (* main_~d~0 4) main_~r~0) (< main_~r~0 (* main_~d~0 2)))} assume !false; {5154#(or (<= (* main_~d~0 4) main_~r~0) (< main_~r~0 (* main_~d~0 2)))} is VALID [2022-04-08 06:22:31,709 INFO L290 TraceCheckUtils]: 22: Hoare triple {4827#(<= (mod main_~A~0 4294967296) 1)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {5154#(or (<= (* main_~d~0 4) main_~r~0) (< main_~r~0 (* main_~d~0 2)))} is VALID [2022-04-08 06:22:31,709 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4790#true} {4827#(<= (mod main_~A~0 4294967296) 1)} #85#return; {4827#(<= (mod main_~A~0 4294967296) 1)} is VALID [2022-04-08 06:22:31,710 INFO L290 TraceCheckUtils]: 20: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,710 INFO L290 TraceCheckUtils]: 19: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,710 INFO L290 TraceCheckUtils]: 18: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,710 INFO L272 TraceCheckUtils]: 17: Hoare triple {4827#(<= (mod main_~A~0 4294967296) 1)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,710 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4790#true} {4827#(<= (mod main_~A~0 4294967296) 1)} #83#return; {4827#(<= (mod main_~A~0 4294967296) 1)} is VALID [2022-04-08 06:22:31,710 INFO L290 TraceCheckUtils]: 15: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,710 INFO L290 TraceCheckUtils]: 14: Hoare triple {4790#true} assume !(0 == ~cond); {4790#true} is VALID [2022-04-08 06:22:31,710 INFO L290 TraceCheckUtils]: 13: Hoare triple {4790#true} ~cond := #in~cond; {4790#true} is VALID [2022-04-08 06:22:31,710 INFO L272 TraceCheckUtils]: 12: Hoare triple {4827#(<= (mod main_~A~0 4294967296) 1)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,711 INFO L290 TraceCheckUtils]: 11: Hoare triple {4827#(<= (mod main_~A~0 4294967296) 1)} ~B~0 := #t~nondet5;havoc #t~nondet5; {4827#(<= (mod main_~A~0 4294967296) 1)} is VALID [2022-04-08 06:22:31,711 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4820#(not (= |assume_abort_if_not_#in~cond| 0))} {4790#true} #81#return; {4827#(<= (mod main_~A~0 4294967296) 1)} is VALID [2022-04-08 06:22:31,711 INFO L290 TraceCheckUtils]: 9: Hoare triple {4820#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4820#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:22:31,711 INFO L290 TraceCheckUtils]: 8: Hoare triple {5251#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {4820#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:22:31,712 INFO L290 TraceCheckUtils]: 7: Hoare triple {4790#true} ~cond := #in~cond; {5251#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-08 06:22:31,712 INFO L272 TraceCheckUtils]: 6: Hoare triple {4790#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {4790#true} is VALID [2022-04-08 06:22:31,712 INFO L290 TraceCheckUtils]: 5: Hoare triple {4790#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; {4790#true} is VALID [2022-04-08 06:22:31,712 INFO L272 TraceCheckUtils]: 4: Hoare triple {4790#true} call #t~ret6 := main(); {4790#true} is VALID [2022-04-08 06:22:31,712 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4790#true} {4790#true} #101#return; {4790#true} is VALID [2022-04-08 06:22:31,712 INFO L290 TraceCheckUtils]: 2: Hoare triple {4790#true} assume true; {4790#true} is VALID [2022-04-08 06:22:31,712 INFO L290 TraceCheckUtils]: 1: Hoare triple {4790#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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); {4790#true} is VALID [2022-04-08 06:22:31,712 INFO L272 TraceCheckUtils]: 0: Hoare triple {4790#true} call ULTIMATE.init(); {4790#true} is VALID [2022-04-08 06:22:31,712 INFO L134 CoverageAnalysis]: Checked inductivity of 189 backedges. 18 proven. 21 refuted. 0 times theorem prover too weak. 150 trivial. 0 not checked. [2022-04-08 06:22:31,712 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:22:31,713 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1440992149] [2022-04-08 06:22:31,713 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:22:31,713 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1716404881] [2022-04-08 06:22:31,713 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1716404881] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:22:31,713 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:22:31,713 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 12 [2022-04-08 06:22:31,713 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:22:31,713 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [431323995] [2022-04-08 06:22:31,713 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [431323995] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:22:31,713 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:22:31,713 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 06:22:31,713 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [528582979] [2022-04-08 06:22:31,713 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:22:31,714 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 8 states have internal predecessors, (24), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 79 [2022-04-08 06:22:31,714 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:22:31,715 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.0) internal successors, (24), 8 states have internal predecessors, (24), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 06:22:31,750 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:22:31,751 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 06:22:31,751 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:22:31,751 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 06:22:31,751 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=102, Unknown=0, NotChecked=0, Total=132 [2022-04-08 06:22:31,751 INFO L87 Difference]: Start difference. First operand 96 states and 111 transitions. Second operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 8 states have internal predecessors, (24), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 06:22:33,408 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:33,409 INFO L93 Difference]: Finished difference Result 113 states and 131 transitions. [2022-04-08 06:22:33,409 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 06:22:33,409 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 8 states have internal predecessors, (24), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 79 [2022-04-08 06:22:33,409 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:22:33,409 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 8 states have internal predecessors, (24), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 06:22:33,410 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 83 transitions. [2022-04-08 06:22:33,411 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 8 states have internal predecessors, (24), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 06:22:33,412 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 83 transitions. [2022-04-08 06:22:33,412 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 83 transitions. [2022-04-08 06:22:33,499 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:22:33,501 INFO L225 Difference]: With dead ends: 113 [2022-04-08 06:22:33,501 INFO L226 Difference]: Without dead ends: 76 [2022-04-08 06:22:33,501 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 161 GetRequests, 146 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=59, Invalid=181, Unknown=0, NotChecked=0, Total=240 [2022-04-08 06:22:33,502 INFO L913 BasicCegarLoop]: 49 mSDtfsCounter, 16 mSDsluCounter, 130 mSDsCounter, 0 mSdLazyCounter, 131 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 179 SdHoareTripleChecker+Invalid, 160 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 131 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-08 06:22:33,502 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 179 Invalid, 160 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 131 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-08 06:22:33,502 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2022-04-08 06:22:33,659 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 76. [2022-04-08 06:22:33,659 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:22:33,660 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand has 76 states, 46 states have (on average 1.108695652173913) internal successors, (51), 47 states have internal predecessors, (51), 19 states have call successors, (19), 11 states have call predecessors, (19), 10 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 06:22:33,660 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand has 76 states, 46 states have (on average 1.108695652173913) internal successors, (51), 47 states have internal predecessors, (51), 19 states have call successors, (19), 11 states have call predecessors, (19), 10 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 06:22:33,661 INFO L87 Difference]: Start difference. First operand 76 states. Second operand has 76 states, 46 states have (on average 1.108695652173913) internal successors, (51), 47 states have internal predecessors, (51), 19 states have call successors, (19), 11 states have call predecessors, (19), 10 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 06:22:33,668 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:33,668 INFO L93 Difference]: Finished difference Result 76 states and 87 transitions. [2022-04-08 06:22:33,668 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 87 transitions. [2022-04-08 06:22:33,668 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:22:33,668 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:22:33,669 INFO L74 IsIncluded]: Start isIncluded. First operand has 76 states, 46 states have (on average 1.108695652173913) internal successors, (51), 47 states have internal predecessors, (51), 19 states have call successors, (19), 11 states have call predecessors, (19), 10 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) Second operand 76 states. [2022-04-08 06:22:33,669 INFO L87 Difference]: Start difference. First operand has 76 states, 46 states have (on average 1.108695652173913) internal successors, (51), 47 states have internal predecessors, (51), 19 states have call successors, (19), 11 states have call predecessors, (19), 10 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) Second operand 76 states. [2022-04-08 06:22:33,671 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:33,671 INFO L93 Difference]: Finished difference Result 76 states and 87 transitions. [2022-04-08 06:22:33,671 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 87 transitions. [2022-04-08 06:22:33,671 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:22:33,671 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:22:33,671 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:22:33,671 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:22:33,671 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 76 states, 46 states have (on average 1.108695652173913) internal successors, (51), 47 states have internal predecessors, (51), 19 states have call successors, (19), 11 states have call predecessors, (19), 10 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 06:22:33,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 76 states to 76 states and 87 transitions. [2022-04-08 06:22:33,673 INFO L78 Accepts]: Start accepts. Automaton has 76 states and 87 transitions. Word has length 79 [2022-04-08 06:22:33,673 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:22:33,673 INFO L478 AbstractCegarLoop]: Abstraction has 76 states and 87 transitions. [2022-04-08 06:22:33,673 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 8 states have internal predecessors, (24), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 06:22:33,673 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 76 states and 87 transitions. [2022-04-08 06:22:33,791 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:22:33,792 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 87 transitions. [2022-04-08 06:22:33,792 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2022-04-08 06:22:33,792 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:22:33,792 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 3, 3, 3, 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:22:33,812 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:22:34,012 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:22:34,012 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:22:34,013 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:22:34,013 INFO L85 PathProgramCache]: Analyzing trace with hash -1566820819, now seen corresponding path program 3 times [2022-04-08 06:22:34,013 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:22:34,013 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [840867172] [2022-04-08 06:22:34,013 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:22:34,013 INFO L85 PathProgramCache]: Analyzing trace with hash -1566820819, now seen corresponding path program 4 times [2022-04-08 06:22:34,013 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:22:34,014 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [893312542] [2022-04-08 06:22:34,014 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:22:34,014 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:22:34,022 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:22:34,022 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1662336416] [2022-04-08 06:22:34,022 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:22:34,022 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:22:34,022 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:22:34,023 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:22:34,024 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:22:34,072 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:22:34,072 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:22:34,073 INFO L263 TraceCheckSpWp]: Trace formula consists of 188 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-08 06:22:34,084 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:22:34,086 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:22:36,107 INFO L272 TraceCheckUtils]: 0: Hoare triple {5813#true} call ULTIMATE.init(); {5813#true} is VALID [2022-04-08 06:22:36,107 INFO L290 TraceCheckUtils]: 1: Hoare triple {5813#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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); {5813#true} is VALID [2022-04-08 06:22:36,107 INFO L290 TraceCheckUtils]: 2: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:36,107 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5813#true} {5813#true} #101#return; {5813#true} is VALID [2022-04-08 06:22:36,107 INFO L272 TraceCheckUtils]: 4: Hoare triple {5813#true} call #t~ret6 := main(); {5813#true} is VALID [2022-04-08 06:22:36,107 INFO L290 TraceCheckUtils]: 5: Hoare triple {5813#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; {5813#true} is VALID [2022-04-08 06:22:36,107 INFO L272 TraceCheckUtils]: 6: Hoare triple {5813#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:36,108 INFO L290 TraceCheckUtils]: 7: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:36,108 INFO L290 TraceCheckUtils]: 8: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:36,108 INFO L290 TraceCheckUtils]: 9: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:36,108 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5813#true} {5813#true} #81#return; {5813#true} is VALID [2022-04-08 06:22:36,108 INFO L290 TraceCheckUtils]: 11: Hoare triple {5813#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {5813#true} is VALID [2022-04-08 06:22:36,108 INFO L272 TraceCheckUtils]: 12: Hoare triple {5813#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:36,108 INFO L290 TraceCheckUtils]: 13: Hoare triple {5813#true} ~cond := #in~cond; {5857#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 06:22:36,109 INFO L290 TraceCheckUtils]: 14: Hoare triple {5857#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {5861#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:22:36,109 INFO L290 TraceCheckUtils]: 15: Hoare triple {5861#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {5861#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:22:36,109 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5861#(not (= |assume_abort_if_not_#in~cond| 0))} {5813#true} #83#return; {5868#(<= (mod main_~B~0 4294967296) 1)} is VALID [2022-04-08 06:22:36,109 INFO L272 TraceCheckUtils]: 17: Hoare triple {5868#(<= (mod main_~B~0 4294967296) 1)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:36,109 INFO L290 TraceCheckUtils]: 18: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:36,110 INFO L290 TraceCheckUtils]: 19: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:36,110 INFO L290 TraceCheckUtils]: 20: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:36,110 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5813#true} {5868#(<= (mod main_~B~0 4294967296) 1)} #85#return; {5868#(<= (mod main_~B~0 4294967296) 1)} is VALID [2022-04-08 06:22:36,110 INFO L290 TraceCheckUtils]: 22: Hoare triple {5868#(<= (mod main_~B~0 4294967296) 1)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {5887#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} is VALID [2022-04-08 06:22:36,111 INFO L290 TraceCheckUtils]: 23: Hoare triple {5887#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} assume !false; {5887#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} is VALID [2022-04-08 06:22:36,111 INFO L272 TraceCheckUtils]: 24: Hoare triple {5887#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:36,111 INFO L290 TraceCheckUtils]: 25: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:36,111 INFO L290 TraceCheckUtils]: 26: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:36,111 INFO L290 TraceCheckUtils]: 27: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:36,111 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5813#true} {5887#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} #87#return; {5887#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} is VALID [2022-04-08 06:22:36,112 INFO L272 TraceCheckUtils]: 29: Hoare triple {5887#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:36,112 INFO L290 TraceCheckUtils]: 30: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:36,112 INFO L290 TraceCheckUtils]: 31: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:36,112 INFO L290 TraceCheckUtils]: 32: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:36,112 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {5813#true} {5887#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} #89#return; {5887#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} is VALID [2022-04-08 06:22:36,112 INFO L272 TraceCheckUtils]: 34: Hoare triple {5887#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:36,113 INFO L290 TraceCheckUtils]: 35: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:36,113 INFO L290 TraceCheckUtils]: 36: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:36,113 INFO L290 TraceCheckUtils]: 37: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:36,113 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {5813#true} {5887#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} #91#return; {5887#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} is VALID [2022-04-08 06:22:36,114 INFO L290 TraceCheckUtils]: 39: Hoare triple {5887#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {5939#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:36,115 INFO L290 TraceCheckUtils]: 40: Hoare triple {5939#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !false; {5939#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:36,115 INFO L272 TraceCheckUtils]: 41: Hoare triple {5939#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:36,115 INFO L290 TraceCheckUtils]: 42: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:36,115 INFO L290 TraceCheckUtils]: 43: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:36,115 INFO L290 TraceCheckUtils]: 44: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:36,115 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {5813#true} {5939#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= (mod main_~B~0 4294967296) main_~r~0))} #87#return; {5939#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:36,115 INFO L272 TraceCheckUtils]: 46: Hoare triple {5939#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:36,116 INFO L290 TraceCheckUtils]: 47: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:36,116 INFO L290 TraceCheckUtils]: 48: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:36,116 INFO L290 TraceCheckUtils]: 49: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:36,116 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5813#true} {5939#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= (mod main_~B~0 4294967296) main_~r~0))} #89#return; {5939#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:36,116 INFO L272 TraceCheckUtils]: 51: Hoare triple {5939#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:36,116 INFO L290 TraceCheckUtils]: 52: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:36,116 INFO L290 TraceCheckUtils]: 53: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:36,116 INFO L290 TraceCheckUtils]: 54: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:36,117 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {5813#true} {5939#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= (mod main_~B~0 4294967296) main_~r~0))} #91#return; {5939#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:22:36,118 INFO L290 TraceCheckUtils]: 56: Hoare triple {5939#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !(~r~0 >= ~d~0); {5991#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (< (mod main_~B~0 4294967296) main_~d~0))} is VALID [2022-04-08 06:22:36,119 INFO L290 TraceCheckUtils]: 57: Hoare triple {5991#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (< (mod main_~B~0 4294967296) main_~d~0))} assume !false; {5991#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (< (mod main_~B~0 4294967296) main_~d~0))} is VALID [2022-04-08 06:22:36,119 INFO L272 TraceCheckUtils]: 58: Hoare triple {5991#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (< (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)); {5813#true} is VALID [2022-04-08 06:22:36,119 INFO L290 TraceCheckUtils]: 59: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:36,119 INFO L290 TraceCheckUtils]: 60: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:36,119 INFO L290 TraceCheckUtils]: 61: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:36,120 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {5813#true} {5991#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (< (mod main_~B~0 4294967296) main_~d~0))} #93#return; {5991#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (< (mod main_~B~0 4294967296) main_~d~0))} is VALID [2022-04-08 06:22:36,120 INFO L272 TraceCheckUtils]: 63: Hoare triple {5991#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (< (mod main_~B~0 4294967296) main_~d~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:36,120 INFO L290 TraceCheckUtils]: 64: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:36,120 INFO L290 TraceCheckUtils]: 65: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:36,120 INFO L290 TraceCheckUtils]: 66: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:36,120 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {5813#true} {5991#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (< (mod main_~B~0 4294967296) main_~d~0))} #95#return; {5991#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (< (mod main_~B~0 4294967296) main_~d~0))} is VALID [2022-04-08 06:22:36,122 INFO L290 TraceCheckUtils]: 68: Hoare triple {5991#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) 1) (< (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); {6028#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} is VALID [2022-04-08 06:22:36,122 INFO L290 TraceCheckUtils]: 69: Hoare triple {6028#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {6028#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} is VALID [2022-04-08 06:22:36,122 INFO L290 TraceCheckUtils]: 70: Hoare triple {6028#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} assume !false; {6028#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} is VALID [2022-04-08 06:22:36,123 INFO L272 TraceCheckUtils]: 71: Hoare triple {6028#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:36,123 INFO L290 TraceCheckUtils]: 72: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:36,123 INFO L290 TraceCheckUtils]: 73: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:36,123 INFO L290 TraceCheckUtils]: 74: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:36,123 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {5813#true} {6028#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} #93#return; {6028#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} is VALID [2022-04-08 06:22:36,124 INFO L272 TraceCheckUtils]: 76: Hoare triple {6028#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 1) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6053#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:22:36,124 INFO L290 TraceCheckUtils]: 77: Hoare triple {6053#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6057#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:22:36,125 INFO L290 TraceCheckUtils]: 78: Hoare triple {6057#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5814#false} is VALID [2022-04-08 06:22:36,125 INFO L290 TraceCheckUtils]: 79: Hoare triple {5814#false} assume !false; {5814#false} is VALID [2022-04-08 06:22:36,125 INFO L134 CoverageAnalysis]: Checked inductivity of 182 backedges. 21 proven. 11 refuted. 0 times theorem prover too weak. 150 trivial. 0 not checked. [2022-04-08 06:22:36,125 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:22:42,468 INFO L290 TraceCheckUtils]: 79: Hoare triple {5814#false} assume !false; {5814#false} is VALID [2022-04-08 06:22:42,468 INFO L290 TraceCheckUtils]: 78: Hoare triple {6057#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5814#false} is VALID [2022-04-08 06:22:42,469 INFO L290 TraceCheckUtils]: 77: Hoare triple {6053#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6057#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:22:42,469 INFO L272 TraceCheckUtils]: 76: Hoare triple {6073#(= 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)); {6053#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:22:42,470 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {5813#true} {6073#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #93#return; {6073#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:42,470 INFO L290 TraceCheckUtils]: 74: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:42,470 INFO L290 TraceCheckUtils]: 73: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:42,470 INFO L290 TraceCheckUtils]: 72: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:42,470 INFO L272 TraceCheckUtils]: 71: Hoare triple {6073#(= 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)); {5813#true} is VALID [2022-04-08 06:22:42,470 INFO L290 TraceCheckUtils]: 70: Hoare triple {6073#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !false; {6073#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:42,471 INFO L290 TraceCheckUtils]: 69: Hoare triple {6073#(= 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; {6073#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:42,482 INFO L290 TraceCheckUtils]: 68: Hoare triple {6098#(and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))))))} 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); {6073#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:42,482 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {5813#true} {6098#(and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))))))} #95#return; {6098#(and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))))))} is VALID [2022-04-08 06:22:42,482 INFO L290 TraceCheckUtils]: 66: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:42,482 INFO L290 TraceCheckUtils]: 65: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:42,482 INFO L290 TraceCheckUtils]: 64: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:42,483 INFO L272 TraceCheckUtils]: 63: Hoare triple {6098#(and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:42,483 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {5813#true} {6098#(and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))))))} #93#return; {6098#(and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))))))} is VALID [2022-04-08 06:22:42,483 INFO L290 TraceCheckUtils]: 61: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:42,483 INFO L290 TraceCheckUtils]: 60: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:42,483 INFO L290 TraceCheckUtils]: 59: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:42,484 INFO L272 TraceCheckUtils]: 58: Hoare triple {6098#(and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))))))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:42,485 INFO L290 TraceCheckUtils]: 57: Hoare triple {6098#(and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))))))} assume !false; {6098#(and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))))))} is VALID [2022-04-08 06:22:42,486 INFO L290 TraceCheckUtils]: 56: Hoare triple {6135#(or (and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2)))))) (<= main_~d~0 main_~r~0))} assume !(~r~0 >= ~d~0); {6098#(and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))))))} is VALID [2022-04-08 06:22:42,486 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {5813#true} {6135#(or (and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2)))))) (<= main_~d~0 main_~r~0))} #91#return; {6135#(or (and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2)))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:22:42,486 INFO L290 TraceCheckUtils]: 54: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:42,486 INFO L290 TraceCheckUtils]: 53: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:42,486 INFO L290 TraceCheckUtils]: 52: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:42,487 INFO L272 TraceCheckUtils]: 51: Hoare triple {6135#(or (and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2)))))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:42,487 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5813#true} {6135#(or (and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2)))))) (<= main_~d~0 main_~r~0))} #89#return; {6135#(or (and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2)))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:22:42,487 INFO L290 TraceCheckUtils]: 49: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:42,487 INFO L290 TraceCheckUtils]: 48: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:42,487 INFO L290 TraceCheckUtils]: 47: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:42,487 INFO L272 TraceCheckUtils]: 46: Hoare triple {6135#(or (and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2)))))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:42,488 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {5813#true} {6135#(or (and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2)))))) (<= main_~d~0 main_~r~0))} #87#return; {6135#(or (and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2)))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:22:42,488 INFO L290 TraceCheckUtils]: 44: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:42,488 INFO L290 TraceCheckUtils]: 43: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:42,488 INFO L290 TraceCheckUtils]: 42: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:42,488 INFO L272 TraceCheckUtils]: 41: Hoare triple {6135#(or (and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2)))))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:42,489 INFO L290 TraceCheckUtils]: 40: Hoare triple {6135#(or (and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2)))))) (<= main_~d~0 main_~r~0))} assume !false; {6135#(or (and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2)))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:22:42,494 INFO L290 TraceCheckUtils]: 39: Hoare triple {6187#(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; {6135#(or (and (or (not (< main_~p~0 0)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 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_~p~0 2) 0)) (< main_~p~0 0)) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2)))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:22:42,494 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {5813#true} {6187#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #91#return; {6187#(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:22:42,495 INFO L290 TraceCheckUtils]: 37: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:42,495 INFO L290 TraceCheckUtils]: 36: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:42,495 INFO L290 TraceCheckUtils]: 35: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:42,495 INFO L272 TraceCheckUtils]: 34: Hoare triple {6187#(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)); {5813#true} is VALID [2022-04-08 06:22:42,495 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {5813#true} {6187#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #89#return; {6187#(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:22:42,496 INFO L290 TraceCheckUtils]: 32: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:42,496 INFO L290 TraceCheckUtils]: 31: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:42,496 INFO L290 TraceCheckUtils]: 30: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:42,496 INFO L272 TraceCheckUtils]: 29: Hoare triple {6187#(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)); {5813#true} is VALID [2022-04-08 06:22:42,496 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5813#true} {6187#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #87#return; {6187#(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:22:42,497 INFO L290 TraceCheckUtils]: 27: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:42,497 INFO L290 TraceCheckUtils]: 26: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:42,497 INFO L290 TraceCheckUtils]: 25: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:42,497 INFO L272 TraceCheckUtils]: 24: Hoare triple {6187#(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)); {5813#true} is VALID [2022-04-08 06:22:42,497 INFO L290 TraceCheckUtils]: 23: Hoare triple {6187#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} assume !false; {6187#(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:22:42,498 INFO L290 TraceCheckUtils]: 22: Hoare triple {5813#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {6187#(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:22:42,498 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5813#true} {5813#true} #85#return; {5813#true} is VALID [2022-04-08 06:22:42,498 INFO L290 TraceCheckUtils]: 20: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:42,498 INFO L290 TraceCheckUtils]: 19: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:42,498 INFO L290 TraceCheckUtils]: 18: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:42,498 INFO L272 TraceCheckUtils]: 17: Hoare triple {5813#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:42,498 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5813#true} {5813#true} #83#return; {5813#true} is VALID [2022-04-08 06:22:42,499 INFO L290 TraceCheckUtils]: 15: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:42,499 INFO L290 TraceCheckUtils]: 14: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:42,499 INFO L290 TraceCheckUtils]: 13: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:42,499 INFO L272 TraceCheckUtils]: 12: Hoare triple {5813#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:42,499 INFO L290 TraceCheckUtils]: 11: Hoare triple {5813#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {5813#true} is VALID [2022-04-08 06:22:42,499 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5813#true} {5813#true} #81#return; {5813#true} is VALID [2022-04-08 06:22:42,499 INFO L290 TraceCheckUtils]: 9: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:42,499 INFO L290 TraceCheckUtils]: 8: Hoare triple {5813#true} assume !(0 == ~cond); {5813#true} is VALID [2022-04-08 06:22:42,499 INFO L290 TraceCheckUtils]: 7: Hoare triple {5813#true} ~cond := #in~cond; {5813#true} is VALID [2022-04-08 06:22:42,499 INFO L272 TraceCheckUtils]: 6: Hoare triple {5813#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {5813#true} is VALID [2022-04-08 06:22:42,499 INFO L290 TraceCheckUtils]: 5: Hoare triple {5813#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; {5813#true} is VALID [2022-04-08 06:22:42,499 INFO L272 TraceCheckUtils]: 4: Hoare triple {5813#true} call #t~ret6 := main(); {5813#true} is VALID [2022-04-08 06:22:42,499 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5813#true} {5813#true} #101#return; {5813#true} is VALID [2022-04-08 06:22:42,500 INFO L290 TraceCheckUtils]: 2: Hoare triple {5813#true} assume true; {5813#true} is VALID [2022-04-08 06:22:42,500 INFO L290 TraceCheckUtils]: 1: Hoare triple {5813#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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); {5813#true} is VALID [2022-04-08 06:22:42,506 INFO L272 TraceCheckUtils]: 0: Hoare triple {5813#true} call ULTIMATE.init(); {5813#true} is VALID [2022-04-08 06:22:42,508 INFO L134 CoverageAnalysis]: Checked inductivity of 182 backedges. 18 proven. 8 refuted. 0 times theorem prover too weak. 156 trivial. 0 not checked. [2022-04-08 06:22:42,508 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:22:42,508 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [893312542] [2022-04-08 06:22:42,508 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:22:42,508 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1662336416] [2022-04-08 06:22:42,508 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1662336416] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:22:42,508 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:22:42,508 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 8] total 15 [2022-04-08 06:22:42,511 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:22:42,511 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [840867172] [2022-04-08 06:22:42,511 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [840867172] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:22:42,511 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:22:42,511 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 06:22:42,511 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1575385976] [2022-04-08 06:22:42,511 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:22:42,511 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) Word has length 80 [2022-04-08 06:22:42,512 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:22:42,512 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 06:22:42,565 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:22:42,565 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 06:22:42,565 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:22:42,566 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 06:22:42,566 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=160, Unknown=0, NotChecked=0, Total=210 [2022-04-08 06:22:42,566 INFO L87 Difference]: Start difference. First operand 76 states and 87 transitions. Second operand has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 06:22:43,387 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:43,387 INFO L93 Difference]: Finished difference Result 96 states and 109 transitions. [2022-04-08 06:22:43,387 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 06:22:43,387 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) Word has length 80 [2022-04-08 06:22:43,387 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:22:43,387 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 06:22:43,389 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 76 transitions. [2022-04-08 06:22:43,389 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 06:22:43,390 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 76 transitions. [2022-04-08 06:22:43,390 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 76 transitions. [2022-04-08 06:22:43,462 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:22:43,463 INFO L225 Difference]: With dead ends: 96 [2022-04-08 06:22:43,463 INFO L226 Difference]: Without dead ends: 71 [2022-04-08 06:22:43,464 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 162 GetRequests, 145 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 45 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=67, Invalid=239, Unknown=0, NotChecked=0, Total=306 [2022-04-08 06:22:43,465 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 20 mSDsluCounter, 134 mSDsCounter, 0 mSdLazyCounter, 188 mSolverCounterSat, 22 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 175 SdHoareTripleChecker+Invalid, 210 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 22 IncrementalHoareTripleChecker+Valid, 188 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-08 06:22:43,465 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 175 Invalid, 210 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [22 Valid, 188 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-08 06:22:43,465 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-08 06:22:43,567 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 71. [2022-04-08 06:22:43,567 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:22:43,567 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 71 states, 44 states have (on average 1.0) internal successors, (44), 44 states have internal predecessors, (44), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 06:22:43,568 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 71 states, 44 states have (on average 1.0) internal successors, (44), 44 states have internal predecessors, (44), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 06:22:43,568 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 71 states, 44 states have (on average 1.0) internal successors, (44), 44 states have internal predecessors, (44), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 06:22:43,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:43,569 INFO L93 Difference]: Finished difference Result 71 states and 74 transitions. [2022-04-08 06:22:43,569 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 74 transitions. [2022-04-08 06:22:43,569 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:22:43,569 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:22:43,569 INFO L74 IsIncluded]: Start isIncluded. First operand has 71 states, 44 states have (on average 1.0) internal successors, (44), 44 states have internal predecessors, (44), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 71 states. [2022-04-08 06:22:43,570 INFO L87 Difference]: Start difference. First operand has 71 states, 44 states have (on average 1.0) internal successors, (44), 44 states have internal predecessors, (44), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 71 states. [2022-04-08 06:22:43,572 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:22:43,572 INFO L93 Difference]: Finished difference Result 71 states and 74 transitions. [2022-04-08 06:22:43,572 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 74 transitions. [2022-04-08 06:22:43,572 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:22:43,572 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:22:43,572 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:22:43,572 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:22:43,572 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71 states, 44 states have (on average 1.0) internal successors, (44), 44 states have internal predecessors, (44), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 06:22:43,574 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 74 transitions. [2022-04-08 06:22:43,574 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 74 transitions. Word has length 80 [2022-04-08 06:22:43,574 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:22:43,574 INFO L478 AbstractCegarLoop]: Abstraction has 71 states and 74 transitions. [2022-04-08 06:22:43,574 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 6 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 06:22:43,574 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 71 states and 74 transitions. [2022-04-08 06:22:43,673 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:22:43,673 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 74 transitions. [2022-04-08 06:22:43,674 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-08 06:22:43,674 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:22:43,674 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 3, 3, 3, 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, 1, 1] [2022-04-08 06:22:43,690 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:22:43,874 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:22:43,875 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:22:43,875 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:22:43,875 INFO L85 PathProgramCache]: Analyzing trace with hash -815356955, now seen corresponding path program 1 times [2022-04-08 06:22:43,875 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:22:43,875 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1380787693] [2022-04-08 06:22:43,875 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:22:43,875 INFO L85 PathProgramCache]: Analyzing trace with hash -815356955, now seen corresponding path program 2 times [2022-04-08 06:22:43,875 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:22:43,876 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [791292656] [2022-04-08 06:22:43,876 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:22:43,876 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:22:43,884 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:22:43,884 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1532514053] [2022-04-08 06:22:43,884 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:22:43,884 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:22:43,885 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:22:43,885 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:22:43,903 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:22:43,932 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:22:43,932 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:22:43,933 INFO L263 TraceCheckSpWp]: Trace formula consists of 199 conjuncts, 32 conjunts are in the unsatisfiable core [2022-04-08 06:22:43,945 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:22:43,947 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:23:11,266 INFO L272 TraceCheckUtils]: 0: Hoare triple {6789#true} call ULTIMATE.init(); {6789#true} is VALID [2022-04-08 06:23:11,266 INFO L290 TraceCheckUtils]: 1: Hoare triple {6789#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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); {6789#true} is VALID [2022-04-08 06:23:11,266 INFO L290 TraceCheckUtils]: 2: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:11,266 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6789#true} {6789#true} #101#return; {6789#true} is VALID [2022-04-08 06:23:11,267 INFO L272 TraceCheckUtils]: 4: Hoare triple {6789#true} call #t~ret6 := main(); {6789#true} is VALID [2022-04-08 06:23:11,267 INFO L290 TraceCheckUtils]: 5: Hoare triple {6789#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; {6789#true} is VALID [2022-04-08 06:23:11,267 INFO L272 TraceCheckUtils]: 6: Hoare triple {6789#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:11,267 INFO L290 TraceCheckUtils]: 7: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:11,267 INFO L290 TraceCheckUtils]: 8: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:11,267 INFO L290 TraceCheckUtils]: 9: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:11,267 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6789#true} {6789#true} #81#return; {6789#true} is VALID [2022-04-08 06:23:11,267 INFO L290 TraceCheckUtils]: 11: Hoare triple {6789#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {6789#true} is VALID [2022-04-08 06:23:11,267 INFO L272 TraceCheckUtils]: 12: Hoare triple {6789#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:11,267 INFO L290 TraceCheckUtils]: 13: Hoare triple {6789#true} ~cond := #in~cond; {6833#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 06:23:11,268 INFO L290 TraceCheckUtils]: 14: Hoare triple {6833#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {6837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:23:11,268 INFO L290 TraceCheckUtils]: 15: Hoare triple {6837#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {6837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:23:11,268 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6837#(not (= |assume_abort_if_not_#in~cond| 0))} {6789#true} #83#return; {6844#(<= (mod main_~B~0 4294967296) 1)} is VALID [2022-04-08 06:23:11,269 INFO L272 TraceCheckUtils]: 17: Hoare triple {6844#(<= (mod main_~B~0 4294967296) 1)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:11,269 INFO L290 TraceCheckUtils]: 18: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:11,269 INFO L290 TraceCheckUtils]: 19: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:11,269 INFO L290 TraceCheckUtils]: 20: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:11,269 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6789#true} {6844#(<= (mod main_~B~0 4294967296) 1)} #85#return; {6844#(<= (mod main_~B~0 4294967296) 1)} is VALID [2022-04-08 06:23:11,271 INFO L290 TraceCheckUtils]: 22: Hoare triple {6844#(<= (mod main_~B~0 4294967296) 1)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {6863#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~d~0 4294967296) 1) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:23:11,271 INFO L290 TraceCheckUtils]: 23: Hoare triple {6863#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~d~0 4294967296) 1) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {6863#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~d~0 4294967296) 1) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:23:11,271 INFO L272 TraceCheckUtils]: 24: Hoare triple {6863#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~d~0 4294967296) 1) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:11,271 INFO L290 TraceCheckUtils]: 25: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:11,271 INFO L290 TraceCheckUtils]: 26: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:11,272 INFO L290 TraceCheckUtils]: 27: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:11,272 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6789#true} {6863#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~d~0 4294967296) 1) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (= main_~p~0 1))} #87#return; {6863#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~d~0 4294967296) 1) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:23:11,272 INFO L272 TraceCheckUtils]: 29: Hoare triple {6863#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~d~0 4294967296) 1) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:11,272 INFO L290 TraceCheckUtils]: 30: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:11,272 INFO L290 TraceCheckUtils]: 31: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:11,272 INFO L290 TraceCheckUtils]: 32: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:11,273 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6789#true} {6863#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~d~0 4294967296) 1) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (= main_~p~0 1))} #89#return; {6863#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~d~0 4294967296) 1) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:23:11,273 INFO L272 TraceCheckUtils]: 34: Hoare triple {6863#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~d~0 4294967296) 1) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:11,273 INFO L290 TraceCheckUtils]: 35: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:11,273 INFO L290 TraceCheckUtils]: 36: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:11,273 INFO L290 TraceCheckUtils]: 37: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:11,274 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {6789#true} {6863#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~d~0 4294967296) 1) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (= main_~p~0 1))} #91#return; {6863#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~d~0 4294967296) 1) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:23:11,275 INFO L290 TraceCheckUtils]: 39: Hoare triple {6863#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod main_~d~0 4294967296) 1) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {6915#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (= main_~p~0 2) (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} is VALID [2022-04-08 06:23:11,276 INFO L290 TraceCheckUtils]: 40: Hoare triple {6915#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (= main_~p~0 2) (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} assume !false; {6915#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (= main_~p~0 2) (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} is VALID [2022-04-08 06:23:11,276 INFO L272 TraceCheckUtils]: 41: Hoare triple {6915#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (= main_~p~0 2) (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:11,276 INFO L290 TraceCheckUtils]: 42: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:11,276 INFO L290 TraceCheckUtils]: 43: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:11,276 INFO L290 TraceCheckUtils]: 44: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:11,277 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {6789#true} {6915#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (= main_~p~0 2) (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} #87#return; {6915#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (= main_~p~0 2) (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} is VALID [2022-04-08 06:23:11,277 INFO L272 TraceCheckUtils]: 46: Hoare triple {6915#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (= main_~p~0 2) (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:11,277 INFO L290 TraceCheckUtils]: 47: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:11,277 INFO L290 TraceCheckUtils]: 48: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:11,277 INFO L290 TraceCheckUtils]: 49: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:11,277 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {6789#true} {6915#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (= main_~p~0 2) (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} #89#return; {6915#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (= main_~p~0 2) (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} is VALID [2022-04-08 06:23:11,278 INFO L272 TraceCheckUtils]: 51: Hoare triple {6915#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (= main_~p~0 2) (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:11,278 INFO L290 TraceCheckUtils]: 52: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:11,278 INFO L290 TraceCheckUtils]: 53: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:11,278 INFO L290 TraceCheckUtils]: 54: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:11,278 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {6789#true} {6915#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (= main_~p~0 2) (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} #91#return; {6915#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (= main_~p~0 2) (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} is VALID [2022-04-08 06:23:11,279 INFO L290 TraceCheckUtils]: 56: Hoare triple {6915#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (= main_~p~0 2) (<= 0 (div (* (- 1) main_~d~0) (- 2))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} assume !(~r~0 >= ~d~0); {6967#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (< main_~r~0 main_~d~0) (= main_~p~0 2) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} is VALID [2022-04-08 06:23:11,279 INFO L290 TraceCheckUtils]: 57: Hoare triple {6967#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (< main_~r~0 main_~d~0) (= main_~p~0 2) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} assume !false; {6967#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (< main_~r~0 main_~d~0) (= main_~p~0 2) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} is VALID [2022-04-08 06:23:11,279 INFO L272 TraceCheckUtils]: 58: Hoare triple {6967#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (< main_~r~0 main_~d~0) (= main_~p~0 2) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:11,279 INFO L290 TraceCheckUtils]: 59: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:11,279 INFO L290 TraceCheckUtils]: 60: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:11,280 INFO L290 TraceCheckUtils]: 61: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:11,280 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {6789#true} {6967#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (< main_~r~0 main_~d~0) (= main_~p~0 2) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} #93#return; {6967#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (< main_~r~0 main_~d~0) (= main_~p~0 2) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} is VALID [2022-04-08 06:23:11,280 INFO L272 TraceCheckUtils]: 63: Hoare triple {6967#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (< main_~r~0 main_~d~0) (= main_~p~0 2) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:11,280 INFO L290 TraceCheckUtils]: 64: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:11,280 INFO L290 TraceCheckUtils]: 65: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:11,280 INFO L290 TraceCheckUtils]: 66: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:11,281 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {6789#true} {6967#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (< main_~r~0 main_~d~0) (= main_~p~0 2) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} #95#return; {6967#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (< main_~r~0 main_~d~0) (= main_~p~0 2) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} is VALID [2022-04-08 06:23:11,286 INFO L290 TraceCheckUtils]: 68: Hoare triple {6967#(and (= (mod main_~A~0 4294967296) main_~r~0) (<= (mod (div (- main_~d~0) (- 2)) 4294967296) 1) (< main_~r~0 main_~d~0) (= main_~p~0 2) (= main_~q~0 0) (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {7004#(and (= (mod main_~A~0 4294967296) main_~r~0) (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (and (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) 2 (* main_~d~0 2) (* (- 2) (div (+ (- 1) (* (- 1) main_~r~0)) (- 2)))) 8589934592) 1)) (<= aux_div_v_main_~d~0_41_36 main_~r~0) (<= (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) (+ (div (+ (- 1) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* aux_div_v_main_~d~0_41_36 2) 1 (* (- 2) (div (+ (- 1) (* (- 1) main_~r~0)) (- 2)))) 8589934592) 1)) (<= (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) main_~d~0) (+ (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) (div (+ (- 1) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (<= (+ (div (+ (- 1) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) 1)))) (< main_~r~0 (+ (* main_~d~0 2) 1)) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:23:11,291 INFO L290 TraceCheckUtils]: 69: Hoare triple {7004#(and (= (mod main_~A~0 4294967296) main_~r~0) (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (and (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) 2 (* main_~d~0 2) (* (- 2) (div (+ (- 1) (* (- 1) main_~r~0)) (- 2)))) 8589934592) 1)) (<= aux_div_v_main_~d~0_41_36 main_~r~0) (<= (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) (+ (div (+ (- 1) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* aux_div_v_main_~d~0_41_36 2) 1 (* (- 2) (div (+ (- 1) (* (- 1) main_~r~0)) (- 2)))) 8589934592) 1)) (<= (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) main_~d~0) (+ (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) (div (+ (- 1) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (<= (+ (div (+ (- 1) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) 1)))) (< main_~r~0 (+ (* main_~d~0 2) 1)) (= main_~q~0 0) (= main_~p~0 1))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {7008#(and (= main_~q~0 main_~p~0) (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) main_~d~0) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* aux_div_v_main_~d~0_41_36 2) (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) 2 (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (< main_~r~0 (+ main_~d~0 1)) (= main_~p~0 1))} is VALID [2022-04-08 06:23:11,298 INFO L290 TraceCheckUtils]: 70: Hoare triple {7008#(and (= main_~q~0 main_~p~0) (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) main_~d~0) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* aux_div_v_main_~d~0_41_36 2) (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) 2 (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (< main_~r~0 (+ main_~d~0 1)) (= main_~p~0 1))} assume !false; {7008#(and (= main_~q~0 main_~p~0) (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) main_~d~0) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* aux_div_v_main_~d~0_41_36 2) (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) 2 (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (< main_~r~0 (+ main_~d~0 1)) (= main_~p~0 1))} is VALID [2022-04-08 06:23:11,298 INFO L272 TraceCheckUtils]: 71: Hoare triple {7008#(and (= main_~q~0 main_~p~0) (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) main_~d~0) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* aux_div_v_main_~d~0_41_36 2) (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) 2 (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (< main_~r~0 (+ main_~d~0 1)) (= main_~p~0 1))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:11,298 INFO L290 TraceCheckUtils]: 72: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:11,298 INFO L290 TraceCheckUtils]: 73: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:11,298 INFO L290 TraceCheckUtils]: 74: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:11,298 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {6789#true} {7008#(and (= main_~q~0 main_~p~0) (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) main_~d~0) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* aux_div_v_main_~d~0_41_36 2) (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) 2 (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (< main_~r~0 (+ main_~d~0 1)) (= main_~p~0 1))} #93#return; {7008#(and (= main_~q~0 main_~p~0) (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) main_~d~0) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* aux_div_v_main_~d~0_41_36 2) (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) 2 (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (< main_~r~0 (+ main_~d~0 1)) (= main_~p~0 1))} is VALID [2022-04-08 06:23:11,299 INFO L272 TraceCheckUtils]: 76: Hoare triple {7008#(and (= main_~q~0 main_~p~0) (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) main_~d~0) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* aux_div_v_main_~d~0_41_36 2) (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) 2 (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (< main_~r~0 (+ main_~d~0 1)) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:11,299 INFO L290 TraceCheckUtils]: 77: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:11,299 INFO L290 TraceCheckUtils]: 78: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:11,299 INFO L290 TraceCheckUtils]: 79: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:11,299 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {6789#true} {7008#(and (= main_~q~0 main_~p~0) (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) main_~d~0) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* aux_div_v_main_~d~0_41_36 2) (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) 2 (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (< main_~r~0 (+ main_~d~0 1)) (= main_~p~0 1))} #95#return; {7008#(and (= main_~q~0 main_~p~0) (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) main_~d~0) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* aux_div_v_main_~d~0_41_36 2) (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) 2 (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (< main_~r~0 (+ main_~d~0 1)) (= main_~p~0 1))} is VALID [2022-04-08 06:23:11,311 INFO L290 TraceCheckUtils]: 81: Hoare triple {7008#(and (= main_~q~0 main_~p~0) (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) main_~d~0) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* aux_div_v_main_~d~0_41_36 2) (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) 2 (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (< main_~r~0 (+ main_~d~0 1)) (= main_~p~0 1))} assume !(1 != ~p~0); {7045#(and (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) main_~d~0) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* aux_div_v_main_~d~0_41_36 2) (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) 2 (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (< main_~r~0 (+ main_~d~0 1)) (= main_~q~0 1))} is VALID [2022-04-08 06:23:11,312 INFO L272 TraceCheckUtils]: 82: Hoare triple {7045#(and (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) main_~d~0) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= (+ (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (+ (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296) 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* aux_div_v_main_~d~0_41_36 2) (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) 2 (* (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)) (- 2)) (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (< main_~r~0 (+ main_~d~0 1)) (= main_~q~0 1))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {7049#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:23:11,312 INFO L290 TraceCheckUtils]: 83: Hoare triple {7049#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7053#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:23:11,312 INFO L290 TraceCheckUtils]: 84: Hoare triple {7053#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6790#false} is VALID [2022-04-08 06:23:11,312 INFO L290 TraceCheckUtils]: 85: Hoare triple {6790#false} assume !false; {6790#false} is VALID [2022-04-08 06:23:11,313 INFO L134 CoverageAnalysis]: Checked inductivity of 221 backedges. 23 proven. 12 refuted. 0 times theorem prover too weak. 186 trivial. 0 not checked. [2022-04-08 06:23:11,313 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:23:38,052 INFO L290 TraceCheckUtils]: 85: Hoare triple {6790#false} assume !false; {6790#false} is VALID [2022-04-08 06:23:38,053 INFO L290 TraceCheckUtils]: 84: Hoare triple {7053#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6790#false} is VALID [2022-04-08 06:23:38,053 INFO L290 TraceCheckUtils]: 83: Hoare triple {7049#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7053#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:23:38,054 INFO L272 TraceCheckUtils]: 82: Hoare triple {7069#(= (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)); {7049#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:23:38,054 INFO L290 TraceCheckUtils]: 81: Hoare triple {7073#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~p~0 1)))} assume !(1 != ~p~0); {7069#(= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0))} is VALID [2022-04-08 06:23:38,055 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {6789#true} {7073#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~p~0 1)))} #95#return; {7073#(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:23:38,055 INFO L290 TraceCheckUtils]: 79: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:38,055 INFO L290 TraceCheckUtils]: 78: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:38,055 INFO L290 TraceCheckUtils]: 77: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:38,055 INFO L272 TraceCheckUtils]: 76: Hoare triple {7073#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~p~0 1)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:38,055 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {6789#true} {7073#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~p~0 1)))} #93#return; {7073#(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:23:38,056 INFO L290 TraceCheckUtils]: 74: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:38,056 INFO L290 TraceCheckUtils]: 73: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:38,056 INFO L290 TraceCheckUtils]: 72: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:38,056 INFO L272 TraceCheckUtils]: 71: Hoare triple {7073#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~p~0 1)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:38,056 INFO L290 TraceCheckUtils]: 70: Hoare triple {7073#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~p~0 1)))} assume !false; {7073#(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:23:38,058 INFO L290 TraceCheckUtils]: 69: Hoare triple {7073#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~p~0 1)))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {7073#(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:23:38,062 INFO L290 TraceCheckUtils]: 68: Hoare triple {7113#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {7073#(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:23:38,063 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {6789#true} {7113#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))))} #95#return; {7113#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))))} is VALID [2022-04-08 06:23:38,063 INFO L290 TraceCheckUtils]: 66: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:38,063 INFO L290 TraceCheckUtils]: 65: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:38,063 INFO L290 TraceCheckUtils]: 64: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:38,063 INFO L272 TraceCheckUtils]: 63: Hoare triple {7113#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:38,064 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {6789#true} {7113#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))))} #93#return; {7113#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))))} is VALID [2022-04-08 06:23:38,064 INFO L290 TraceCheckUtils]: 61: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:38,064 INFO L290 TraceCheckUtils]: 60: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:38,064 INFO L290 TraceCheckUtils]: 59: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:38,064 INFO L272 TraceCheckUtils]: 58: Hoare triple {7113#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:38,065 INFO L290 TraceCheckUtils]: 57: Hoare triple {7113#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))))} assume !false; {7113#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))))} is VALID [2022-04-08 06:23:38,066 INFO L290 TraceCheckUtils]: 56: Hoare triple {7150#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))) (<= main_~d~0 main_~r~0))} assume !(~r~0 >= ~d~0); {7113#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))))} is VALID [2022-04-08 06:23:38,066 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {6789#true} {7150#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))) (<= main_~d~0 main_~r~0))} #91#return; {7150#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:23:38,066 INFO L290 TraceCheckUtils]: 54: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:38,066 INFO L290 TraceCheckUtils]: 53: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:38,067 INFO L290 TraceCheckUtils]: 52: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:38,067 INFO L272 TraceCheckUtils]: 51: Hoare triple {7150#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:38,067 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {6789#true} {7150#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))) (<= main_~d~0 main_~r~0))} #89#return; {7150#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:23:38,067 INFO L290 TraceCheckUtils]: 49: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:38,067 INFO L290 TraceCheckUtils]: 48: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:38,067 INFO L290 TraceCheckUtils]: 47: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:38,067 INFO L272 TraceCheckUtils]: 46: Hoare triple {7150#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:38,068 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {6789#true} {7150#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))) (<= main_~d~0 main_~r~0))} #87#return; {7150#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:23:38,068 INFO L290 TraceCheckUtils]: 44: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:38,068 INFO L290 TraceCheckUtils]: 43: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:38,068 INFO L290 TraceCheckUtils]: 42: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:38,068 INFO L272 TraceCheckUtils]: 41: Hoare triple {7150#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:38,069 INFO L290 TraceCheckUtils]: 40: Hoare triple {7150#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))) (<= main_~d~0 main_~r~0))} assume !false; {7150#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:23:38,072 INFO L290 TraceCheckUtils]: 39: Hoare triple {7202#(or (not (= (div (* main_~p~0 2) 2) 1)) (= (+ main_~r~0 (* (div (* main_~d~0 2) 2) main_~q~0)) (mod main_~A~0 4294967296)) (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; {7150#(or (not (= (div main_~p~0 2) 1)) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (= (mod main_~A~0 4294967296) (+ (* main_~q~0 (div main_~d~0 2)) main_~r~0))) (or (= (mod main_~A~0 4294967296) (+ (* (+ (div main_~d~0 2) 1) main_~q~0) main_~r~0)) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:23:38,073 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {6789#true} {7202#(or (not (= (div (* main_~p~0 2) 2) 1)) (= (+ main_~r~0 (* (div (* main_~d~0 2) 2) main_~q~0)) (mod main_~A~0 4294967296)) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} #91#return; {7202#(or (not (= (div (* main_~p~0 2) 2) 1)) (= (+ main_~r~0 (* (div (* main_~d~0 2) 2) main_~q~0)) (mod main_~A~0 4294967296)) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:23:38,073 INFO L290 TraceCheckUtils]: 37: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:38,073 INFO L290 TraceCheckUtils]: 36: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:38,073 INFO L290 TraceCheckUtils]: 35: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:38,073 INFO L272 TraceCheckUtils]: 34: Hoare triple {7202#(or (not (= (div (* main_~p~0 2) 2) 1)) (= (+ main_~r~0 (* (div (* main_~d~0 2) 2) main_~q~0)) (mod main_~A~0 4294967296)) (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)); {6789#true} is VALID [2022-04-08 06:23:38,074 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6789#true} {7202#(or (not (= (div (* main_~p~0 2) 2) 1)) (= (+ main_~r~0 (* (div (* main_~d~0 2) 2) main_~q~0)) (mod main_~A~0 4294967296)) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} #89#return; {7202#(or (not (= (div (* main_~p~0 2) 2) 1)) (= (+ main_~r~0 (* (div (* main_~d~0 2) 2) main_~q~0)) (mod main_~A~0 4294967296)) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:23:38,074 INFO L290 TraceCheckUtils]: 32: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:38,074 INFO L290 TraceCheckUtils]: 31: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:38,074 INFO L290 TraceCheckUtils]: 30: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:38,074 INFO L272 TraceCheckUtils]: 29: Hoare triple {7202#(or (not (= (div (* main_~p~0 2) 2) 1)) (= (+ main_~r~0 (* (div (* main_~d~0 2) 2) main_~q~0)) (mod main_~A~0 4294967296)) (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)); {6789#true} is VALID [2022-04-08 06:23:38,075 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6789#true} {7202#(or (not (= (div (* main_~p~0 2) 2) 1)) (= (+ main_~r~0 (* (div (* main_~d~0 2) 2) main_~q~0)) (mod main_~A~0 4294967296)) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} #87#return; {7202#(or (not (= (div (* main_~p~0 2) 2) 1)) (= (+ main_~r~0 (* (div (* main_~d~0 2) 2) main_~q~0)) (mod main_~A~0 4294967296)) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:23:38,075 INFO L290 TraceCheckUtils]: 27: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:38,075 INFO L290 TraceCheckUtils]: 26: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:38,075 INFO L290 TraceCheckUtils]: 25: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:38,075 INFO L272 TraceCheckUtils]: 24: Hoare triple {7202#(or (not (= (div (* main_~p~0 2) 2) 1)) (= (+ main_~r~0 (* (div (* main_~d~0 2) 2) main_~q~0)) (mod main_~A~0 4294967296)) (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)); {6789#true} is VALID [2022-04-08 06:23:38,075 INFO L290 TraceCheckUtils]: 23: Hoare triple {7202#(or (not (= (div (* main_~p~0 2) 2) 1)) (= (+ main_~r~0 (* (div (* main_~d~0 2) 2) main_~q~0)) (mod main_~A~0 4294967296)) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} assume !false; {7202#(or (not (= (div (* main_~p~0 2) 2) 1)) (= (+ main_~r~0 (* (div (* main_~d~0 2) 2) main_~q~0)) (mod main_~A~0 4294967296)) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:23:38,076 INFO L290 TraceCheckUtils]: 22: Hoare triple {6789#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {7202#(or (not (= (div (* main_~p~0 2) 2) 1)) (= (+ main_~r~0 (* (div (* main_~d~0 2) 2) main_~q~0)) (mod main_~A~0 4294967296)) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:23:38,076 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6789#true} {6789#true} #85#return; {6789#true} is VALID [2022-04-08 06:23:38,076 INFO L290 TraceCheckUtils]: 20: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:38,076 INFO L290 TraceCheckUtils]: 19: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:38,076 INFO L290 TraceCheckUtils]: 18: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:38,076 INFO L272 TraceCheckUtils]: 17: Hoare triple {6789#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:38,076 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6789#true} {6789#true} #83#return; {6789#true} is VALID [2022-04-08 06:23:38,076 INFO L290 TraceCheckUtils]: 15: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:38,076 INFO L290 TraceCheckUtils]: 14: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:38,076 INFO L290 TraceCheckUtils]: 13: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:38,077 INFO L272 TraceCheckUtils]: 12: Hoare triple {6789#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 1 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:38,077 INFO L290 TraceCheckUtils]: 11: Hoare triple {6789#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {6789#true} is VALID [2022-04-08 06:23:38,077 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6789#true} {6789#true} #81#return; {6789#true} is VALID [2022-04-08 06:23:38,077 INFO L290 TraceCheckUtils]: 9: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:38,077 INFO L290 TraceCheckUtils]: 8: Hoare triple {6789#true} assume !(0 == ~cond); {6789#true} is VALID [2022-04-08 06:23:38,077 INFO L290 TraceCheckUtils]: 7: Hoare triple {6789#true} ~cond := #in~cond; {6789#true} is VALID [2022-04-08 06:23:38,077 INFO L272 TraceCheckUtils]: 6: Hoare triple {6789#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 1 then 1 else 0)); {6789#true} is VALID [2022-04-08 06:23:38,077 INFO L290 TraceCheckUtils]: 5: Hoare triple {6789#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; {6789#true} is VALID [2022-04-08 06:23:38,077 INFO L272 TraceCheckUtils]: 4: Hoare triple {6789#true} call #t~ret6 := main(); {6789#true} is VALID [2022-04-08 06:23:38,077 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6789#true} {6789#true} #101#return; {6789#true} is VALID [2022-04-08 06:23:38,077 INFO L290 TraceCheckUtils]: 2: Hoare triple {6789#true} assume true; {6789#true} is VALID [2022-04-08 06:23:38,077 INFO L290 TraceCheckUtils]: 1: Hoare triple {6789#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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); {6789#true} is VALID [2022-04-08 06:23:38,077 INFO L272 TraceCheckUtils]: 0: Hoare triple {6789#true} call ULTIMATE.init(); {6789#true} is VALID [2022-04-08 06:23:38,078 INFO L134 CoverageAnalysis]: Checked inductivity of 221 backedges. 20 proven. 9 refuted. 0 times theorem prover too weak. 192 trivial. 0 not checked. [2022-04-08 06:23:38,078 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:23:38,078 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [791292656] [2022-04-08 06:23:38,078 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:23:38,078 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1532514053] [2022-04-08 06:23:38,078 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1532514053] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:23:38,078 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:23:38,078 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9] total 18 [2022-04-08 06:23:38,079 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:23:38,079 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1380787693] [2022-04-08 06:23:38,079 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1380787693] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:23:38,079 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:23:38,079 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 06:23:38,079 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1610988084] [2022-04-08 06:23:38,079 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:23:38,079 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) Word has length 86 [2022-04-08 06:23:38,080 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:23:38,080 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-08 06:23:38,198 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:23:38,198 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 06:23:38,198 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:23:38,198 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 06:23:38,198 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=68, Invalid=238, Unknown=0, NotChecked=0, Total=306 [2022-04-08 06:23:38,199 INFO L87 Difference]: Start difference. First operand 71 states and 74 transitions. Second operand has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-08 06:23:39,720 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:23:39,720 INFO L93 Difference]: Finished difference Result 71 states and 74 transitions. [2022-04-08 06:23:39,720 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 06:23:39,720 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) Word has length 86 [2022-04-08 06:23:39,720 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:23:39,721 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-08 06:23:39,723 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 55 transitions. [2022-04-08 06:23:39,723 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-08 06:23:39,725 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 55 transitions. [2022-04-08 06:23:39,725 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 55 transitions. [2022-04-08 06:23:39,857 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:23:39,858 INFO L225 Difference]: With dead ends: 71 [2022-04-08 06:23:39,858 INFO L226 Difference]: Without dead ends: 0 [2022-04-08 06:23:39,860 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 177 GetRequests, 153 SyntacticMatches, 2 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 64 ImplicationChecksByTransitivity, 1.6s TimeCoverageRelationStatistics Valid=116, Invalid=436, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:23:39,860 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 15 mSDsluCounter, 159 mSDsCounter, 0 mSdLazyCounter, 174 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 192 SdHoareTripleChecker+Invalid, 285 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 174 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 93 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-08 06:23:39,860 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [15 Valid, 192 Invalid, 285 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 174 Invalid, 0 Unknown, 93 Unchecked, 0.7s Time] [2022-04-08 06:23:39,861 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-08 06:23:39,861 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-08 06:23:39,861 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:23:39,861 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-08 06:23:39,861 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-08 06:23:39,861 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-08 06:23:39,861 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:23:39,861 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-08 06:23:39,861 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 06:23:39,861 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:23:39,861 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:23:39,861 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-08 06:23:39,861 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-08 06:23:39,861 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:23:39,861 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-08 06:23:39,862 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 06:23:39,862 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:23:39,862 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:23:39,862 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:23:39,862 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:23:39,862 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-08 06:23:39,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-08 06:23:39,862 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 86 [2022-04-08 06:23:39,862 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:23:39,862 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-08 06:23:39,862 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-08 06:23:39,862 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 0 states and 0 transitions. [2022-04-08 06:23:39,862 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:23:39,862 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 06:23:39,862 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:23:39,864 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-08 06:23:39,881 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:23:40,073 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:23:40,074 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-08 06:23:44,218 INFO L882 garLoopResultBuilder]: For program point reach_errorEXIT(line 8) no Hoare annotation was computed. [2022-04-08 06:23:44,218 INFO L882 garLoopResultBuilder]: For program point reach_errorENTRY(line 8) no Hoare annotation was computed. [2022-04-08 06:23:44,218 INFO L882 garLoopResultBuilder]: For program point reach_errorFINAL(line 8) no Hoare annotation was computed. [2022-04-08 06:23:44,218 INFO L885 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 11 13) the Hoare annotation is: true [2022-04-08 06:23:44,218 INFO L878 garLoopResultBuilder]: At program point L12(line 12) the Hoare annotation is: (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|) [2022-04-08 06:23:44,218 INFO L878 garLoopResultBuilder]: At program point L12-2(lines 11 13) the Hoare annotation is: (and (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)) [2022-04-08 06:23:44,219 INFO L878 garLoopResultBuilder]: At program point assume_abort_if_notEXIT(lines 11 13) the Hoare annotation is: (and (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)) [2022-04-08 06:23:44,219 INFO L878 garLoopResultBuilder]: At program point L29(line 29) the Hoare annotation is: (let ((.cse0 (mod main_~B~0 4294967296))) (and (<= (mod main_~A~0 4294967296) 1) (<= .cse0 1) (<= 1 .cse0))) [2022-04-08 06:23:44,219 INFO L878 garLoopResultBuilder]: At program point L60(line 60) the Hoare annotation is: (let ((.cse0 (mod main_~B~0 4294967296))) (and (= main_~d~0 .cse0) (<= .cse0 1) (<= 1 .cse0) (= main_~p~0 1))) [2022-04-08 06:23:44,219 INFO L885 garLoopResultBuilder]: At program point mainEXIT(lines 22 63) the Hoare annotation is: true [2022-04-08 06:23:44,219 INFO L878 garLoopResultBuilder]: At program point L54(lines 54 57) the Hoare annotation is: (let ((.cse6 (mod main_~B~0 4294967296))) (and (= (mod main_~A~0 4294967296) main_~r~0) (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (let ((.cse5 (div (+ (- 1) (* (- 1) main_~r~0)) (- 2)))) (let ((.cse0 (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse1 (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse2 (* (- 2) .cse5)) (.cse4 (+ .cse5 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse3 (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296))) (and (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ .cse0 .cse1 2 (* main_~d~0 2) .cse2) 8589934592) 1)) (<= aux_div_v_main_~d~0_41_36 main_~r~0) (<= .cse3 .cse4) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ .cse0 .cse1 (* aux_div_v_main_~d~0_41_36 2) 1 .cse2) 8589934592) 1)) (<= (+ .cse3 main_~d~0) (+ (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) .cse5 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247) (<= .cse4 (+ .cse3 1)))))) (< main_~r~0 (+ (* main_~d~0 2) 1)) (<= 1 .cse6) (= main_~q~0 0) (<= .cse6 main_~r~0) (= main_~p~0 1))) [2022-04-08 06:23:44,219 INFO L878 garLoopResultBuilder]: At program point L54-2(lines 22 63) the Hoare annotation is: (let ((.cse8 (mod main_~B~0 4294967296))) (let ((.cse7 (<= .cse8 1)) (.cse10 (= main_~q~0 0)) (.cse6 (mod main_~A~0 4294967296)) (.cse9 (= main_~p~0 1))) (or (and (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (let ((.cse1 (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)))) (let ((.cse2 (+ .cse1 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse0 (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296)) (.cse3 (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse4 (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse5 (* .cse1 (- 2)))) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ .cse0 main_~d~0) (+ .cse1 (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= .cse0 .cse2) (<= .cse2 (+ .cse0 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ .cse3 .cse4 (* aux_div_v_main_~d~0_41_36 2) .cse5 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ .cse3 .cse4 2 .cse5 (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))))) (= (+ main_~d~0 main_~r~0) .cse6) .cse7 (< main_~r~0 (+ main_~d~0 1)) (= main_~q~0 1) (< .cse6 (* 2 .cse8)) .cse9) (and (= .cse6 main_~r~0) (= main_~p~0 2) (<= 1 .cse8) .cse10 (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)) (< .cse8 main_~d~0)) (and (= main_~d~0 .cse8) (< main_~r~0 .cse8) .cse7 .cse10 (<= .cse6 main_~r~0) .cse9)))) [2022-04-08 06:23:44,219 INFO L878 garLoopResultBuilder]: At program point L48(lines 46 58) the Hoare annotation is: (let ((.cse1 (mod main_~B~0 4294967296))) (let ((.cse9 (<= .cse1 1)) (.cse2 (= main_~q~0 0)) (.cse0 (mod main_~A~0 4294967296)) (.cse10 (= main_~p~0 1))) (or (and (= .cse0 main_~r~0) (< main_~r~0 (* 2 .cse1)) (= main_~p~0 2) .cse2 (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)) (< .cse1 main_~d~0)) (and (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (let ((.cse4 (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)))) (let ((.cse5 (+ .cse4 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse3 (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296)) (.cse6 (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse7 (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse8 (* .cse4 (- 2)))) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ .cse3 main_~d~0) (+ .cse4 (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= .cse3 .cse5) (<= .cse5 (+ .cse3 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ .cse6 .cse7 (* aux_div_v_main_~d~0_41_36 2) .cse8 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ .cse6 .cse7 2 .cse8 (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))))) (< 0 .cse1) (= (+ main_~d~0 main_~r~0) .cse0) .cse9 (< main_~r~0 (+ main_~d~0 1)) (= main_~q~0 1) .cse10) (and (= main_~d~0 .cse1) (< main_~r~0 .cse1) .cse9 .cse2 (<= .cse0 main_~r~0) .cse10)))) [2022-04-08 06:23:44,220 INFO L878 garLoopResultBuilder]: At program point L46-1(lines 46 58) the Hoare annotation is: (let ((.cse0 (mod main_~B~0 4294967296)) (.cse1 (mod main_~A~0 4294967296)) (.cse2 (= main_~p~0 1))) (or (and (= main_~d~0 .cse0) (< main_~r~0 .cse0) (<= .cse0 1) (= main_~q~0 0) (<= .cse1 main_~r~0) .cse2) (and (= .cse1 (+ main_~r~0 .cse0)) (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (let ((.cse4 (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)))) (let ((.cse5 (+ .cse4 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse3 (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296)) (.cse6 (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse7 (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse8 (* .cse4 (- 2)))) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ .cse3 main_~d~0) (+ .cse4 (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= .cse3 .cse5) (<= .cse5 (+ .cse3 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ .cse6 .cse7 (* aux_div_v_main_~d~0_41_36 2) .cse8 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ .cse6 .cse7 2 .cse8 (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))))) (= (+ main_~d~0 main_~r~0) .cse1) (< main_~r~0 (+ main_~d~0 1)) (= main_~q~0 1) .cse2))) [2022-04-08 06:23:44,220 INFO L885 garLoopResultBuilder]: At program point mainFINAL(lines 22 63) the Hoare annotation is: true [2022-04-08 06:23:44,220 INFO L878 garLoopResultBuilder]: At program point L38(line 38) the Hoare annotation is: (let ((.cse10 (* (- 1) main_~d~0))) (let ((.cse6 (div .cse10 (- 2))) (.cse7 (mod main_~B~0 4294967296))) (let ((.cse0 (= (mod main_~A~0 4294967296) main_~r~0)) (.cse1 (= main_~d~0 (* main_~p~0 .cse7))) (.cse2 (<= 0 .cse6)) (.cse9 (<= .cse7 1)) (.cse3 (<= 1 .cse7)) (.cse4 (= (mod main_~d~0 2) 0)) (.cse5 (= main_~q~0 0)) (.cse8 (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))) (or (and .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 (<= .cse6 main_~r~0) (<= .cse7 main_~r~0) .cse8) (and .cse0 .cse1 .cse9 .cse3 .cse5 .cse8 (= main_~p~0 1)) (and (= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296))) (<= (div main_~r~0 (- 2)) (div .cse10 4)) .cse1 .cse2 .cse9 .cse3 .cse4 .cse5 .cse8))))) [2022-04-08 06:23:44,220 INFO L878 garLoopResultBuilder]: At program point L36-2(lines 36 44) the Hoare annotation is: (let ((.cse10 (* (- 1) main_~d~0))) (let ((.cse6 (div .cse10 (- 2))) (.cse7 (mod main_~B~0 4294967296))) (let ((.cse0 (= (mod main_~A~0 4294967296) main_~r~0)) (.cse1 (= main_~d~0 (* main_~p~0 .cse7))) (.cse2 (<= 0 .cse6)) (.cse9 (<= .cse7 1)) (.cse3 (<= 1 .cse7)) (.cse4 (= (mod main_~d~0 2) 0)) (.cse5 (= main_~q~0 0)) (.cse8 (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))) (or (and .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 (<= .cse6 main_~r~0) (<= .cse7 main_~r~0) .cse8) (and .cse0 .cse1 .cse9 .cse3 .cse5 .cse8 (= main_~p~0 1)) (and (= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296))) (<= (div main_~r~0 (- 2)) (div .cse10 4)) .cse1 .cse2 .cse9 .cse3 .cse4 .cse5 .cse8))))) [2022-04-08 06:23:44,220 INFO L885 garLoopResultBuilder]: At program point mainENTRY(lines 22 63) the Hoare annotation is: true [2022-04-08 06:23:44,220 INFO L885 garLoopResultBuilder]: At program point L61(line 61) the Hoare annotation is: true [2022-04-08 06:23:44,220 INFO L878 garLoopResultBuilder]: At program point L28(line 28) the Hoare annotation is: (<= (mod main_~A~0 4294967296) 1) [2022-04-08 06:23:44,220 INFO L878 garLoopResultBuilder]: At program point L28-1(line 28) the Hoare annotation is: (and (<= (mod main_~A~0 4294967296) 1) (<= (mod main_~B~0 4294967296) 1)) [2022-04-08 06:23:44,220 INFO L885 garLoopResultBuilder]: At program point L26(line 26) the Hoare annotation is: true [2022-04-08 06:23:44,220 INFO L878 garLoopResultBuilder]: At program point L26-1(line 26) the Hoare annotation is: (<= (mod main_~A~0 4294967296) 1) [2022-04-08 06:23:44,220 INFO L878 garLoopResultBuilder]: At program point L47(line 47) the Hoare annotation is: (let ((.cse8 (mod main_~B~0 4294967296))) (let ((.cse7 (<= .cse8 1)) (.cse10 (= main_~q~0 0)) (.cse6 (mod main_~A~0 4294967296)) (.cse9 (= main_~p~0 1))) (or (and (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (let ((.cse1 (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)))) (let ((.cse2 (+ .cse1 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse0 (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296)) (.cse3 (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse4 (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse5 (* .cse1 (- 2)))) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ .cse0 main_~d~0) (+ .cse1 (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= .cse0 .cse2) (<= .cse2 (+ .cse0 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ .cse3 .cse4 (* aux_div_v_main_~d~0_41_36 2) .cse5 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ .cse3 .cse4 2 .cse5 (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))))) (= (+ main_~d~0 main_~r~0) .cse6) .cse7 (< main_~r~0 (+ main_~d~0 1)) (= main_~q~0 1) (< .cse6 (* 2 .cse8)) .cse9) (and (= .cse6 main_~r~0) (= main_~p~0 2) (<= 1 .cse8) .cse10 (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)) (< .cse8 main_~d~0)) (and (= main_~d~0 .cse8) (< main_~r~0 .cse8) .cse7 .cse10 (<= .cse6 main_~r~0) .cse9)))) [2022-04-08 06:23:44,220 INFO L878 garLoopResultBuilder]: At program point L47-1(line 47) the Hoare annotation is: (let ((.cse8 (mod main_~B~0 4294967296))) (let ((.cse7 (<= .cse8 1)) (.cse10 (= main_~q~0 0)) (.cse6 (mod main_~A~0 4294967296)) (.cse9 (= main_~p~0 1))) (or (and (exists ((aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 Int) (aux_div_v_main_~d~0_41_36 Int) (aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 Int)) (let ((.cse1 (div (+ (- 1) (* (- 1) main_~d~0) (* (- 1) main_~r~0)) (- 2)))) (let ((.cse2 (+ .cse1 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse0 (* aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 4294967296)) (.cse3 (* (- 2) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse4 (* 8589934592 aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (.cse5 (* .cse1 (- 2)))) (and (<= aux_div_v_main_~d~0_41_36 (+ main_~d~0 main_~r~0)) (<= (+ .cse0 main_~d~0) (+ .cse1 (* 4294967296 aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103) aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247)) (<= .cse0 .cse2) (<= .cse2 (+ .cse0 1)) (< aux_div_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103 (+ (div (+ .cse3 .cse4 (* aux_div_v_main_~d~0_41_36 2) .cse5 1) 8589934592) 1)) (< aux_div_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247 (+ (div (+ .cse3 .cse4 2 .cse5 (* main_~d~0 2)) 8589934592) 1)) (<= 0 aux_mod_aux_mod_aux_mod_aux_div_aux_mod_aux_mod_v_main_~d~0_41_36_77_99_64_103_247))))) (= (+ main_~d~0 main_~r~0) .cse6) .cse7 (< main_~r~0 (+ main_~d~0 1)) (= main_~q~0 1) (< .cse6 (* 2 .cse8)) .cse9) (and (= .cse6 main_~r~0) (= main_~p~0 2) (<= 1 .cse8) .cse10 (<= (div (* (- 1) main_~d~0) (- 2)) main_~r~0) (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)) (< .cse8 main_~d~0)) (and (= main_~d~0 .cse8) (< main_~r~0 .cse8) .cse7 .cse10 (<= .cse6 main_~r~0) .cse9)))) [2022-04-08 06:23:44,221 INFO L878 garLoopResultBuilder]: At program point L39(lines 36 44) the Hoare annotation is: (let ((.cse10 (* (- 1) main_~d~0))) (let ((.cse6 (div .cse10 (- 2))) (.cse7 (mod main_~B~0 4294967296))) (let ((.cse0 (= (mod main_~A~0 4294967296) main_~r~0)) (.cse1 (= main_~d~0 (* main_~p~0 .cse7))) (.cse2 (<= 0 .cse6)) (.cse9 (<= .cse7 1)) (.cse3 (<= 1 .cse7)) (.cse4 (= (mod main_~d~0 2) 0)) (.cse5 (= main_~q~0 0)) (.cse8 (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))) (or (and .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 (<= .cse6 main_~r~0) (<= .cse7 main_~r~0) .cse8) (and .cse0 .cse1 .cse9 .cse3 .cse5 .cse8 (= main_~p~0 1)) (and (= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296))) (<= (div main_~r~0 (- 2)) (div .cse10 4)) .cse1 .cse2 .cse9 .cse3 .cse4 .cse5 .cse8))))) [2022-04-08 06:23:44,221 INFO L878 garLoopResultBuilder]: At program point L37(line 37) the Hoare annotation is: (let ((.cse10 (* (- 1) main_~d~0))) (let ((.cse6 (div .cse10 (- 2))) (.cse7 (mod main_~B~0 4294967296))) (let ((.cse0 (= (mod main_~A~0 4294967296) main_~r~0)) (.cse1 (= main_~d~0 (* main_~p~0 .cse7))) (.cse2 (<= 0 .cse6)) (.cse9 (<= .cse7 1)) (.cse3 (<= 1 .cse7)) (.cse4 (= (mod main_~d~0 2) 0)) (.cse5 (= main_~q~0 0)) (.cse8 (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))) (or (and .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 (<= .cse6 main_~r~0) (<= .cse7 main_~r~0) .cse8) (and .cse0 .cse1 .cse9 .cse3 .cse5 .cse8 (= main_~p~0 1)) (and (= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296))) (<= (div main_~r~0 (- 2)) (div .cse10 4)) .cse1 .cse2 .cse9 .cse3 .cse4 .cse5 .cse8))))) [2022-04-08 06:23:44,221 INFO L878 garLoopResultBuilder]: At program point L37-1(line 37) the Hoare annotation is: (let ((.cse10 (* (- 1) main_~d~0))) (let ((.cse6 (div .cse10 (- 2))) (.cse7 (mod main_~B~0 4294967296))) (let ((.cse0 (= (mod main_~A~0 4294967296) main_~r~0)) (.cse1 (= main_~d~0 (* main_~p~0 .cse7))) (.cse2 (<= 0 .cse6)) (.cse9 (<= .cse7 1)) (.cse3 (<= 1 .cse7)) (.cse4 (= (mod main_~d~0 2) 0)) (.cse5 (= main_~q~0 0)) (.cse8 (< 0 (+ (div (+ (* (- 1) main_~r~0) 1) 4294967296) 1)))) (or (and .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 (<= .cse6 main_~r~0) (<= .cse7 main_~r~0) .cse8) (and .cse0 .cse1 .cse9 .cse3 .cse5 .cse8 (= main_~p~0 1)) (and (= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296))) (<= (div main_~r~0 (- 2)) (div .cse10 4)) .cse1 .cse2 .cse9 .cse3 .cse4 .cse5 .cse8))))) [2022-04-08 06:23:44,221 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.initFINAL(line -1) the Hoare annotation is: true [2022-04-08 06:23:44,221 INFO L878 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-08 06:23:44,221 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.initEXIT(line -1) the Hoare annotation is: true [2022-04-08 06:23:44,221 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startEXIT(line -1) the Hoare annotation is: true [2022-04-08 06:23:44,221 INFO L885 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-08 06:23:44,221 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-08 06:23:44,221 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startFINAL(line -1) the Hoare annotation is: true [2022-04-08 06:23:44,221 INFO L878 garLoopResultBuilder]: At program point L16(lines 16 17) the Hoare annotation is: (= |__VERIFIER_assert_#in~cond| 0) [2022-04-08 06:23:44,221 INFO L878 garLoopResultBuilder]: At program point L15(lines 15 18) the Hoare annotation is: (and (or (not (<= 1 |__VERIFIER_assert_#in~cond|)) (<= 1 __VERIFIER_assert_~cond)) (or (= |__VERIFIER_assert_#in~cond| 0) (not (= __VERIFIER_assert_~cond 0)))) [2022-04-08 06:23:44,221 INFO L885 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 14 20) the Hoare annotation is: true [2022-04-08 06:23:44,221 INFO L878 garLoopResultBuilder]: At program point L15-2(lines 14 20) the Hoare annotation is: (and (or (not (<= 1 |__VERIFIER_assert_#in~cond|)) (<= 1 __VERIFIER_assert_~cond)) (or (= |__VERIFIER_assert_#in~cond| 0) (not (= __VERIFIER_assert_~cond 0)))) [2022-04-08 06:23:44,221 INFO L878 garLoopResultBuilder]: At program point __VERIFIER_assertEXIT(lines 14 20) the Hoare annotation is: (and (or (not (<= 1 |__VERIFIER_assert_#in~cond|)) (<= 1 __VERIFIER_assert_~cond)) (or (= |__VERIFIER_assert_#in~cond| 0) (not (= __VERIFIER_assert_~cond 0)))) [2022-04-08 06:23:44,222 INFO L878 garLoopResultBuilder]: At program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 17) the Hoare annotation is: (= |__VERIFIER_assert_#in~cond| 0) [2022-04-08 06:23:44,224 INFO L719 BasicCegarLoop]: Path program histogram: [4, 4, 2, 2, 2, 2, 2, 2, 2] [2022-04-08 06:23:44,224 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-08 06:23:44,226 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-08 06:23:44,227 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-08 06:23:44,333 INFO L163 areAnnotationChecker]: CFG has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-08 06:23:44,341 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 06:23:44 BoogieIcfgContainer [2022-04-08 06:23:44,341 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-08 06:23:44,342 INFO L158 Benchmark]: Toolchain (without parser) took 112089.59ms. Allocated memory was 210.8MB in the beginning and 330.3MB in the end (delta: 119.5MB). Free memory was 187.9MB in the beginning and 276.0MB in the end (delta: -88.1MB). Peak memory consumption was 197.4MB. Max. memory is 8.0GB. [2022-04-08 06:23:44,342 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 210.8MB. Free memory is still 174.3MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-08 06:23:44,342 INFO L158 Benchmark]: CACSL2BoogieTranslator took 189.51ms. Allocated memory is still 210.8MB. Free memory was 187.7MB in the beginning and 186.7MB in the end (delta: 968.6kB). Peak memory consumption was 9.9MB. Max. memory is 8.0GB. [2022-04-08 06:23:44,343 INFO L158 Benchmark]: Boogie Preprocessor took 22.70ms. Allocated memory is still 210.8MB. Free memory was 186.7MB in the beginning and 185.0MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-08 06:23:44,343 INFO L158 Benchmark]: RCFGBuilder took 352.74ms. Allocated memory is still 210.8MB. Free memory was 185.0MB in the beginning and 172.7MB in the end (delta: 12.3MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-08 06:23:44,343 INFO L158 Benchmark]: TraceAbstraction took 111520.98ms. Allocated memory was 210.8MB in the beginning and 330.3MB in the end (delta: 119.5MB). Free memory was 172.2MB in the beginning and 276.0MB in the end (delta: -103.8MB). Peak memory consumption was 183.3MB. Max. memory is 8.0GB. [2022-04-08 06:23:44,344 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.09ms. Allocated memory is still 210.8MB. Free memory is still 174.3MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 189.51ms. Allocated memory is still 210.8MB. Free memory was 187.7MB in the beginning and 186.7MB in the end (delta: 968.6kB). Peak memory consumption was 9.9MB. Max. memory is 8.0GB. * Boogie Preprocessor took 22.70ms. Allocated memory is still 210.8MB. Free memory was 186.7MB in the beginning and 185.0MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 352.74ms. Allocated memory is still 210.8MB. Free memory was 185.0MB in the beginning and 172.7MB in the end (delta: 12.3MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 111520.98ms. Allocated memory was 210.8MB in the beginning and 330.3MB in the end (delta: 119.5MB). Free memory was 172.2MB in the beginning and 276.0MB in the end (delta: -103.8MB). Peak memory consumption was 183.3MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 17]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 41 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 111.3s, OverallIterations: 11, TraceHistogramMax: 11, PathProgramHistogramMax: 4, EmptinessCheckTime: 0.0s, AutomataDifference: 12.4s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 4.1s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 317 SdHoareTripleChecker+Valid, 3.5s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 258 mSDsluCounter, 1547 SdHoareTripleChecker+Invalid, 3.5s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 93 IncrementalHoareTripleChecker+Unchecked, 1123 mSDsCounter, 215 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1659 IncrementalHoareTripleChecker+Invalid, 1967 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 215 mSolverCounterUnsat, 424 mSDtfsCounter, 1659 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 1067 GetRequests, 926 SyntacticMatches, 9 SemanticMatches, 132 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 274 ImplicationChecksByTransitivity, 5.2s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=96occurred in iteration=8, InterpolantAutomatonStates: 94, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.7s AutomataMinimizationTime, 11 MinimizatonAttempts, 20 StatesRemovedByMinimization, 5 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 38 LocationsWithAnnotation, 342 PreInvPairs, 453 NumberOfFragments, 2155 HoareAnnotationTreeSize, 342 FomulaSimplifications, 447 FormulaSimplificationTreeSizeReduction, 0.4s HoareSimplificationTime, 38 FomulaSimplificationsInter, 1494 FormulaSimplificationTreeSizeReductionInter, 3.6s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: No data available, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 36]: Loop Invariant Derived loop invariant: (((((((((A % 4294967296 == r && d == p * (B % 4294967296)) && 0 <= -1 * d / -2) && 1 <= B % 4294967296) && d % 2 == 0) && q == 0) && -1 * d / -2 <= r) && B % 4294967296 <= r) && 0 < (-1 * r + 1) / 4294967296 + 1) || ((((((A % 4294967296 == r && d == p * (B % 4294967296)) && B % 4294967296 <= 1) && 1 <= B % 4294967296) && q == 0) && 0 < (-1 * r + 1) / 4294967296 + 1) && p == 1)) || ((((((((A == r + A / 4294967296 * 4294967296 && r / -2 <= -1 * d / 4) && d == p * (B % 4294967296)) && 0 <= -1 * d / -2) && B % 4294967296 <= 1) && 1 <= B % 4294967296) && d % 2 == 0) && q == 0) && 0 < (-1 * r + 1) / 4294967296 + 1) - ProcedureContractResult [Line: 11]: Procedure Contract for assume_abort_if_not Derived contract for procedure assume_abort_if_not: !(\old(cond) == 0) && cond == \old(cond) - ProcedureContractResult [Line: 22]: Procedure Contract for main Derived contract for procedure main: 1 - ProcedureContractResult [Line: 14]: Procedure Contract for __VERIFIER_assert Derived contract for procedure __VERIFIER_assert: (!(1 <= \old(cond)) || 1 <= cond) && (\old(cond) == 0 || !(cond == 0)) RESULT: Ultimate proved your program to be correct! [2022-04-08 06:23:44,446 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request...