/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/hard-ll_unwindbound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 09:14:30,920 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 09:14:30,922 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 09:14:30,955 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 09:14:30,955 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 09:14:30,956 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 09:14:30,958 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 09:14:30,960 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 09:14:30,962 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 09:14:30,965 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 09:14:30,965 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 09:14:30,966 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 09:14:30,966 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 09:14:30,968 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 09:14:30,969 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 09:14:30,971 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 09:14:30,971 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 09:14:30,972 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 09:14:30,973 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 09:14:30,977 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 09:14:30,978 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 09:14:30,979 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 09:14:30,979 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 09:14:30,980 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 09:14:30,980 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 09:14:30,982 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 09:14:30,982 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 09:14:30,982 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 09:14:30,983 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 09:14:30,983 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 09:14:30,984 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 09:14:30,984 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 09:14:30,985 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 09:14:30,985 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 09:14:30,986 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 09:14:30,986 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 09:14:30,987 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 09:14:30,987 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 09:14:30,987 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 09:14:30,987 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 09:14:30,988 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 09:14:30,989 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 09:14:30,989 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-15 09:14:30,997 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 09:14:30,997 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 09:14:30,998 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 09:14:30,998 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-15 09:14:30,998 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 09:14:30,998 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-15 09:14:30,998 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 09:14:30,998 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 09:14:30,998 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 09:14:30,999 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 09:14:30,999 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-15 09:14:30,999 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 09:14:30,999 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 09:14:30,999 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 09:14:30,999 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 09:14:30,999 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 09:14:30,999 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-15 09:14:30,999 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 09:14:31,000 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 09:14:31,000 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 09:14:31,000 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-15 09:14:31,000 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-15 09:14:31,000 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-15 09:14:31,000 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 09:14:31,000 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-15 09:14:31,000 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-15 09:14:31,144 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 09:14:31,156 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 09:14:31,157 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 09:14:31,158 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 09:14:31,158 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 09:14:31,159 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/hard-ll_unwindbound10.c [2022-04-15 09:14:31,191 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d57bfa179/ebff44314c3748298cc0827ccf81f8da/FLAG47e143bd8 [2022-04-15 09:14:31,578 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 09:14:31,578 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/hard-ll_unwindbound10.c [2022-04-15 09:14:31,582 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d57bfa179/ebff44314c3748298cc0827ccf81f8da/FLAG47e143bd8 [2022-04-15 09:14:31,589 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d57bfa179/ebff44314c3748298cc0827ccf81f8da [2022-04-15 09:14:31,591 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 09:14:31,592 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-15 09:14:31,594 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 09:14:31,594 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 09:14:31,596 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 09:14:31,597 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 09:14:31" (1/1) ... [2022-04-15 09:14:31,598 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4f4f9e41 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:14:31, skipping insertion in model container [2022-04-15 09:14:31,598 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 09:14:31" (1/1) ... [2022-04-15 09:14:31,602 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 09:14:31,611 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 09:14:31,718 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/hard-ll_unwindbound10.c[538,551] [2022-04-15 09:14:31,730 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 09:14:31,735 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 09:14:31,742 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/hard-ll_unwindbound10.c[538,551] [2022-04-15 09:14:31,748 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 09:14:31,756 INFO L208 MainTranslator]: Completed translation [2022-04-15 09:14:31,756 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:14:31 WrapperNode [2022-04-15 09:14:31,756 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 09:14:31,757 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 09:14:31,757 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 09:14:31,757 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 09:14:31,763 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:14:31" (1/1) ... [2022-04-15 09:14:31,763 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:14:31" (1/1) ... [2022-04-15 09:14:31,767 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:14:31" (1/1) ... [2022-04-15 09:14:31,767 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:14:31" (1/1) ... [2022-04-15 09:14:31,771 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:14:31" (1/1) ... [2022-04-15 09:14:31,774 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:14:31" (1/1) ... [2022-04-15 09:14:31,774 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:14:31" (1/1) ... [2022-04-15 09:14:31,775 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 09:14:31,776 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 09:14:31,776 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 09:14:31,776 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 09:14:31,776 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:14:31" (1/1) ... [2022-04-15 09:14:31,782 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 09:14:31,788 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:14:31,796 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-15 09:14:31,810 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-15 09:14:31,821 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 09:14:31,821 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 09:14:31,822 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 09:14:31,822 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 09:14:31,822 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 09:14:31,822 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 09:14:31,822 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 09:14:31,822 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 09:14:31,823 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 09:14:31,823 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 09:14:31,823 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-15 09:14:31,823 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 09:14:31,825 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 09:14:31,825 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 09:14:31,825 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 09:14:31,825 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 09:14:31,826 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 09:14:31,826 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 09:14:31,826 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 09:14:31,826 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 09:14:31,874 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 09:14:31,875 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 09:14:31,982 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 09:14:31,986 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 09:14:31,986 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-15 09:14:31,987 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 09:14:31 BoogieIcfgContainer [2022-04-15 09:14:31,987 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 09:14:31,988 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 09:14:31,988 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 09:14:31,990 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 09:14:31,990 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 09:14:31" (1/3) ... [2022-04-15 09:14:31,991 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1d54a850 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 09:14:31, skipping insertion in model container [2022-04-15 09:14:31,991 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:14:31" (2/3) ... [2022-04-15 09:14:31,991 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1d54a850 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 09:14:31, skipping insertion in model container [2022-04-15 09:14:31,991 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 09:14:31" (3/3) ... [2022-04-15 09:14:31,992 INFO L111 eAbstractionObserver]: Analyzing ICFG hard-ll_unwindbound10.c [2022-04-15 09:14:31,995 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-15 09:14:31,995 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 09:14:32,019 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 09:14:32,023 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-15 09:14:32,023 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 09:14:32,037 INFO L276 IsEmpty]: Start isEmpty. Operand has 37 states, 21 states have (on average 1.4761904761904763) internal successors, (31), 22 states have internal predecessors, (31), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 09:14:32,041 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-15 09:14:32,041 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:14:32,042 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:14:32,042 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:14:32,045 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:14:32,045 INFO L85 PathProgramCache]: Analyzing trace with hash 1191571617, now seen corresponding path program 1 times [2022-04-15 09:14:32,050 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:32,050 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1700195260] [2022-04-15 09:14:32,056 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:14:32,056 INFO L85 PathProgramCache]: Analyzing trace with hash 1191571617, now seen corresponding path program 2 times [2022-04-15 09:14:32,058 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:14:32,058 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1146305535] [2022-04-15 09:14:32,059 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:14:32,059 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:14:32,120 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:14:32,162 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 09:14:32,165 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:14:32,190 INFO L290 TraceCheckUtils]: 0: Hoare triple {49#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {40#true} is VALID [2022-04-15 09:14:32,190 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-15 09:14:32,191 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40#true} {40#true} #96#return; {40#true} is VALID [2022-04-15 09:14:32,191 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 09:14:32,193 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:14:32,197 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-15 09:14:32,198 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-15 09:14:32,198 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-15 09:14:32,198 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {40#true} #80#return; {41#false} is VALID [2022-04-15 09:14:32,199 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} call ULTIMATE.init(); {49#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 09:14:32,199 INFO L290 TraceCheckUtils]: 1: Hoare triple {49#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {40#true} is VALID [2022-04-15 09:14:32,200 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-15 09:14:32,200 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #96#return; {40#true} is VALID [2022-04-15 09:14:32,200 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret8 := main(); {40#true} is VALID [2022-04-15 09:14:32,200 INFO L290 TraceCheckUtils]: 5: Hoare triple {40#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {40#true} is VALID [2022-04-15 09:14:32,200 INFO L272 TraceCheckUtils]: 6: Hoare triple {40#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {40#true} is VALID [2022-04-15 09:14:32,200 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-15 09:14:32,201 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-15 09:14:32,201 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-15 09:14:32,201 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41#false} {40#true} #80#return; {41#false} is VALID [2022-04-15 09:14:32,201 INFO L290 TraceCheckUtils]: 11: Hoare triple {41#false} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {41#false} is VALID [2022-04-15 09:14:32,201 INFO L290 TraceCheckUtils]: 12: Hoare triple {41#false} assume !true; {41#false} is VALID [2022-04-15 09:14:32,202 INFO L290 TraceCheckUtils]: 13: Hoare triple {41#false} assume !true; {41#false} is VALID [2022-04-15 09:14:32,202 INFO L272 TraceCheckUtils]: 14: Hoare triple {41#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {41#false} is VALID [2022-04-15 09:14:32,202 INFO L290 TraceCheckUtils]: 15: Hoare triple {41#false} ~cond := #in~cond; {41#false} is VALID [2022-04-15 09:14:32,202 INFO L290 TraceCheckUtils]: 16: Hoare triple {41#false} assume 0 == ~cond; {41#false} is VALID [2022-04-15 09:14:32,202 INFO L290 TraceCheckUtils]: 17: Hoare triple {41#false} assume !false; {41#false} is VALID [2022-04-15 09:14:32,202 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 09:14:32,203 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:14:32,203 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1146305535] [2022-04-15 09:14:32,203 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1146305535] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:14:32,203 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:14:32,204 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 09:14:32,205 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:14:32,205 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1700195260] [2022-04-15 09:14:32,206 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1700195260] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:14:32,206 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:14:32,206 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 09:14:32,206 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [820454232] [2022-04-15 09:14:32,206 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:14:32,209 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-15 09:14:32,210 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:14:32,212 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:14:32,230 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:32,231 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 09:14:32,231 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:32,243 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 09:14:32,244 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 09:14:32,245 INFO L87 Difference]: Start difference. First operand has 37 states, 21 states have (on average 1.4761904761904763) internal successors, (31), 22 states have internal predecessors, (31), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:14:32,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:32,365 INFO L93 Difference]: Finished difference Result 66 states and 101 transitions. [2022-04-15 09:14:32,365 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 09:14:32,365 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-15 09:14:32,365 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:14:32,366 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:14:32,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-15 09:14:32,372 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:14:32,378 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-15 09:14:32,378 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 101 transitions. [2022-04-15 09:14:32,469 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:32,475 INFO L225 Difference]: With dead ends: 66 [2022-04-15 09:14:32,475 INFO L226 Difference]: Without dead ends: 33 [2022-04-15 09:14:32,477 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 09:14:32,479 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 33 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:14:32,480 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 49 Invalid, 33 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:14:32,495 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states. [2022-04-15 09:14:32,505 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 32. [2022-04-15 09:14:32,505 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:14:32,506 INFO L82 GeneralOperation]: Start isEquivalent. First operand 33 states. Second operand has 32 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:14:32,506 INFO L74 IsIncluded]: Start isIncluded. First operand 33 states. Second operand has 32 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:14:32,507 INFO L87 Difference]: Start difference. First operand 33 states. Second operand has 32 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:14:32,510 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:32,510 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-15 09:14:32,510 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-15 09:14:32,510 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:32,511 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:32,511 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 33 states. [2022-04-15 09:14:32,511 INFO L87 Difference]: Start difference. First operand has 32 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 33 states. [2022-04-15 09:14:32,514 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:32,514 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-15 09:14:32,514 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-15 09:14:32,514 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:32,514 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:32,514 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:14:32,515 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:14:32,519 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:14:32,521 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 42 transitions. [2022-04-15 09:14:32,522 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 42 transitions. Word has length 18 [2022-04-15 09:14:32,522 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:14:32,523 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 42 transitions. [2022-04-15 09:14:32,523 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:14:32,523 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 42 transitions. [2022-04-15 09:14:32,561 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:32,561 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 42 transitions. [2022-04-15 09:14:32,561 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-15 09:14:32,562 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:14:32,562 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:14:32,562 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 09:14:32,562 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:14:32,564 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:14:32,564 INFO L85 PathProgramCache]: Analyzing trace with hash 336486197, now seen corresponding path program 1 times [2022-04-15 09:14:32,565 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:32,565 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1393706954] [2022-04-15 09:14:32,569 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:14:32,569 INFO L85 PathProgramCache]: Analyzing trace with hash 336486197, now seen corresponding path program 2 times [2022-04-15 09:14:32,569 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:14:32,570 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1704653539] [2022-04-15 09:14:32,570 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:14:32,570 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:14:32,601 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:14:32,669 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 09:14:32,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:14:32,679 INFO L290 TraceCheckUtils]: 0: Hoare triple {326#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {314#true} is VALID [2022-04-15 09:14:32,679 INFO L290 TraceCheckUtils]: 1: Hoare triple {314#true} assume true; {314#true} is VALID [2022-04-15 09:14:32,680 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {314#true} {314#true} #96#return; {314#true} is VALID [2022-04-15 09:14:32,680 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 09:14:32,681 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:14:32,707 INFO L290 TraceCheckUtils]: 0: Hoare triple {314#true} ~cond := #in~cond; {314#true} is VALID [2022-04-15 09:14:32,707 INFO L290 TraceCheckUtils]: 1: Hoare triple {314#true} assume !(0 == ~cond); {314#true} is VALID [2022-04-15 09:14:32,707 INFO L290 TraceCheckUtils]: 2: Hoare triple {314#true} assume true; {314#true} is VALID [2022-04-15 09:14:32,707 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {314#true} {314#true} #80#return; {314#true} is VALID [2022-04-15 09:14:32,708 INFO L272 TraceCheckUtils]: 0: Hoare triple {314#true} call ULTIMATE.init(); {326#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 09:14:32,708 INFO L290 TraceCheckUtils]: 1: Hoare triple {326#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {314#true} is VALID [2022-04-15 09:14:32,708 INFO L290 TraceCheckUtils]: 2: Hoare triple {314#true} assume true; {314#true} is VALID [2022-04-15 09:14:32,708 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {314#true} {314#true} #96#return; {314#true} is VALID [2022-04-15 09:14:32,709 INFO L272 TraceCheckUtils]: 4: Hoare triple {314#true} call #t~ret8 := main(); {314#true} is VALID [2022-04-15 09:14:32,709 INFO L290 TraceCheckUtils]: 5: Hoare triple {314#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {314#true} is VALID [2022-04-15 09:14:32,709 INFO L272 TraceCheckUtils]: 6: Hoare triple {314#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {314#true} is VALID [2022-04-15 09:14:32,709 INFO L290 TraceCheckUtils]: 7: Hoare triple {314#true} ~cond := #in~cond; {314#true} is VALID [2022-04-15 09:14:32,709 INFO L290 TraceCheckUtils]: 8: Hoare triple {314#true} assume !(0 == ~cond); {314#true} is VALID [2022-04-15 09:14:32,709 INFO L290 TraceCheckUtils]: 9: Hoare triple {314#true} assume true; {314#true} is VALID [2022-04-15 09:14:32,710 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {314#true} {314#true} #80#return; {314#true} is VALID [2022-04-15 09:14:32,711 INFO L290 TraceCheckUtils]: 11: Hoare triple {314#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {323#(= main_~q~0 0)} is VALID [2022-04-15 09:14:32,712 INFO L290 TraceCheckUtils]: 12: Hoare triple {323#(= main_~q~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {323#(= main_~q~0 0)} is VALID [2022-04-15 09:14:32,712 INFO L290 TraceCheckUtils]: 13: Hoare triple {323#(= main_~q~0 0)} assume !!(#t~post6 < 10);havoc #t~post6; {323#(= main_~q~0 0)} is VALID [2022-04-15 09:14:32,713 INFO L272 TraceCheckUtils]: 14: Hoare triple {323#(= main_~q~0 0)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {324#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:14:32,713 INFO L290 TraceCheckUtils]: 15: Hoare triple {324#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {325#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:14:32,717 INFO L290 TraceCheckUtils]: 16: Hoare triple {325#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {315#false} is VALID [2022-04-15 09:14:32,717 INFO L290 TraceCheckUtils]: 17: Hoare triple {315#false} assume !false; {315#false} is VALID [2022-04-15 09:14:32,717 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 09:14:32,717 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:14:32,718 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1704653539] [2022-04-15 09:14:32,718 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1704653539] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:14:32,718 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:14:32,718 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 09:14:32,718 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:14:32,718 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1393706954] [2022-04-15 09:14:32,718 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1393706954] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:14:32,719 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:14:32,719 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 09:14:32,719 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1193236478] [2022-04-15 09:14:32,719 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:14:32,720 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-15 09:14:32,720 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:14:32,720 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:14:32,736 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:32,737 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 09:14:32,737 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:32,737 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 09:14:32,737 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-15 09:14:32,738 INFO L87 Difference]: Start difference. First operand 32 states and 42 transitions. Second operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:14:33,048 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:33,048 INFO L93 Difference]: Finished difference Result 47 states and 62 transitions. [2022-04-15 09:14:33,048 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 09:14:33,049 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-15 09:14:33,049 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:14:33,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:14:33,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 62 transitions. [2022-04-15 09:14:33,052 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:14:33,054 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 62 transitions. [2022-04-15 09:14:33,054 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 62 transitions. [2022-04-15 09:14:33,101 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:33,103 INFO L225 Difference]: With dead ends: 47 [2022-04-15 09:14:33,103 INFO L226 Difference]: Without dead ends: 45 [2022-04-15 09:14:33,103 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=28, Invalid=62, Unknown=0, NotChecked=0, Total=90 [2022-04-15 09:14:33,104 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 28 mSDsluCounter, 51 mSDsCounter, 0 mSdLazyCounter, 99 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 90 SdHoareTripleChecker+Invalid, 113 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 99 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 09:14:33,105 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [35 Valid, 90 Invalid, 113 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 99 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 09:14:33,117 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2022-04-15 09:14:33,126 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 36. [2022-04-15 09:14:33,126 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:14:33,127 INFO L82 GeneralOperation]: Start isEquivalent. First operand 45 states. Second operand has 36 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 22 states have internal predecessors, (27), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:14:33,127 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand has 36 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 22 states have internal predecessors, (27), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:14:33,129 INFO L87 Difference]: Start difference. First operand 45 states. Second operand has 36 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 22 states have internal predecessors, (27), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:14:33,138 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:33,138 INFO L93 Difference]: Finished difference Result 45 states and 60 transitions. [2022-04-15 09:14:33,138 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 60 transitions. [2022-04-15 09:14:33,142 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:33,142 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:33,143 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 22 states have internal predecessors, (27), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 45 states. [2022-04-15 09:14:33,143 INFO L87 Difference]: Start difference. First operand has 36 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 22 states have internal predecessors, (27), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 45 states. [2022-04-15 09:14:33,145 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:33,145 INFO L93 Difference]: Finished difference Result 45 states and 60 transitions. [2022-04-15 09:14:33,145 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 60 transitions. [2022-04-15 09:14:33,145 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:33,146 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:33,146 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:14:33,146 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:14:33,146 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 22 states have internal predecessors, (27), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:14:33,147 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 45 transitions. [2022-04-15 09:14:33,147 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 45 transitions. Word has length 18 [2022-04-15 09:14:33,148 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:14:33,148 INFO L478 AbstractCegarLoop]: Abstraction has 36 states and 45 transitions. [2022-04-15 09:14:33,148 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:14:33,148 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 36 states and 45 transitions. [2022-04-15 09:14:33,201 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:33,201 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 45 transitions. [2022-04-15 09:14:33,203 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-04-15 09:14:33,205 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:14:33,205 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:14:33,206 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-15 09:14:33,206 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:14:33,206 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:14:33,206 INFO L85 PathProgramCache]: Analyzing trace with hash -1819267188, now seen corresponding path program 1 times [2022-04-15 09:14:33,206 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:33,206 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [894183631] [2022-04-15 09:14:33,207 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:14:33,207 INFO L85 PathProgramCache]: Analyzing trace with hash -1819267188, now seen corresponding path program 2 times [2022-04-15 09:14:33,207 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:14:33,207 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [599086340] [2022-04-15 09:14:33,207 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:14:33,207 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:14:33,222 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:14:33,223 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [81665804] [2022-04-15 09:14:33,223 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:14:33,223 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:14:33,223 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:14:33,227 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:14:33,228 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-15 09:14:33,271 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-15 09:14:33,271 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:14:33,272 INFO L263 TraceCheckSpWp]: Trace formula consists of 87 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-15 09:14:33,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:14:33,282 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:14:33,378 INFO L272 TraceCheckUtils]: 0: Hoare triple {593#true} call ULTIMATE.init(); {593#true} is VALID [2022-04-15 09:14:33,379 INFO L290 TraceCheckUtils]: 1: Hoare triple {593#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:33,379 INFO L290 TraceCheckUtils]: 2: Hoare triple {601#(<= ~counter~0 0)} assume true; {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:33,380 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {601#(<= ~counter~0 0)} {593#true} #96#return; {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:33,380 INFO L272 TraceCheckUtils]: 4: Hoare triple {601#(<= ~counter~0 0)} call #t~ret8 := main(); {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:33,380 INFO L290 TraceCheckUtils]: 5: Hoare triple {601#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:33,381 INFO L272 TraceCheckUtils]: 6: Hoare triple {601#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:33,381 INFO L290 TraceCheckUtils]: 7: Hoare triple {601#(<= ~counter~0 0)} ~cond := #in~cond; {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:33,381 INFO L290 TraceCheckUtils]: 8: Hoare triple {601#(<= ~counter~0 0)} assume !(0 == ~cond); {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:33,382 INFO L290 TraceCheckUtils]: 9: Hoare triple {601#(<= ~counter~0 0)} assume true; {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:33,382 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {601#(<= ~counter~0 0)} {601#(<= ~counter~0 0)} #80#return; {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:33,383 INFO L290 TraceCheckUtils]: 11: Hoare triple {601#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:33,383 INFO L290 TraceCheckUtils]: 12: Hoare triple {601#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {635#(<= |main_#t~post6| 0)} is VALID [2022-04-15 09:14:33,383 INFO L290 TraceCheckUtils]: 13: Hoare triple {635#(<= |main_#t~post6| 0)} assume !(#t~post6 < 10);havoc #t~post6; {594#false} is VALID [2022-04-15 09:14:33,384 INFO L290 TraceCheckUtils]: 14: Hoare triple {594#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {594#false} is VALID [2022-04-15 09:14:33,384 INFO L290 TraceCheckUtils]: 15: Hoare triple {594#false} assume !(#t~post7 < 10);havoc #t~post7; {594#false} is VALID [2022-04-15 09:14:33,384 INFO L272 TraceCheckUtils]: 16: Hoare triple {594#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {594#false} is VALID [2022-04-15 09:14:33,384 INFO L290 TraceCheckUtils]: 17: Hoare triple {594#false} ~cond := #in~cond; {594#false} is VALID [2022-04-15 09:14:33,384 INFO L290 TraceCheckUtils]: 18: Hoare triple {594#false} assume 0 == ~cond; {594#false} is VALID [2022-04-15 09:14:33,384 INFO L290 TraceCheckUtils]: 19: Hoare triple {594#false} assume !false; {594#false} is VALID [2022-04-15 09:14:33,384 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 09:14:33,384 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 09:14:33,385 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:14:33,385 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [599086340] [2022-04-15 09:14:33,385 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:14:33,385 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [81665804] [2022-04-15 09:14:33,385 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [81665804] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:14:33,385 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:14:33,385 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 09:14:33,386 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:14:33,386 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [894183631] [2022-04-15 09:14:33,386 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [894183631] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:14:33,386 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:14:33,386 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 09:14:33,386 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1439324761] [2022-04-15 09:14:33,386 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:14:33,386 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 20 [2022-04-15 09:14:33,387 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:14:33,387 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 09:14:33,400 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:33,400 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-15 09:14:33,400 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:33,400 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-15 09:14:33,400 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 09:14:33,400 INFO L87 Difference]: Start difference. First operand 36 states and 45 transitions. Second operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 09:14:33,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:33,478 INFO L93 Difference]: Finished difference Result 52 states and 67 transitions. [2022-04-15 09:14:33,478 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-15 09:14:33,479 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 20 [2022-04-15 09:14:33,479 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:14:33,479 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 09:14:33,480 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 64 transitions. [2022-04-15 09:14:33,481 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 09:14:33,482 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 64 transitions. [2022-04-15 09:14:33,482 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 64 transitions. [2022-04-15 09:14:33,521 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:33,522 INFO L225 Difference]: With dead ends: 52 [2022-04-15 09:14:33,522 INFO L226 Difference]: Without dead ends: 38 [2022-04-15 09:14:33,522 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 17 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 09:14:33,523 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 0 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 107 SdHoareTripleChecker+Invalid, 8 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:14:33,523 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 107 Invalid, 8 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:14:33,524 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-04-15 09:14:33,532 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 38. [2022-04-15 09:14:33,532 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:14:33,533 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand has 38 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 24 states have internal predecessors, (29), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:14:33,533 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand has 38 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 24 states have internal predecessors, (29), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:14:33,533 INFO L87 Difference]: Start difference. First operand 38 states. Second operand has 38 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 24 states have internal predecessors, (29), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:14:33,535 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:33,535 INFO L93 Difference]: Finished difference Result 38 states and 47 transitions. [2022-04-15 09:14:33,535 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 47 transitions. [2022-04-15 09:14:33,535 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:33,535 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:33,535 INFO L74 IsIncluded]: Start isIncluded. First operand has 38 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 24 states have internal predecessors, (29), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 38 states. [2022-04-15 09:14:33,536 INFO L87 Difference]: Start difference. First operand has 38 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 24 states have internal predecessors, (29), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 38 states. [2022-04-15 09:14:33,537 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:33,537 INFO L93 Difference]: Finished difference Result 38 states and 47 transitions. [2022-04-15 09:14:33,537 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 47 transitions. [2022-04-15 09:14:33,537 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:33,537 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:33,537 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:14:33,537 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:14:33,538 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 24 states have internal predecessors, (29), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:14:33,539 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 47 transitions. [2022-04-15 09:14:33,539 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 47 transitions. Word has length 20 [2022-04-15 09:14:33,539 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:14:33,539 INFO L478 AbstractCegarLoop]: Abstraction has 38 states and 47 transitions. [2022-04-15 09:14:33,539 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 09:14:33,539 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 38 states and 47 transitions. [2022-04-15 09:14:33,572 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:33,572 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 47 transitions. [2022-04-15 09:14:33,572 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-15 09:14:33,572 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:14:33,572 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:14:33,589 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-15 09:14:33,788 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:14:33,789 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:14:33,789 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:14:33,790 INFO L85 PathProgramCache]: Analyzing trace with hash -784889968, now seen corresponding path program 1 times [2022-04-15 09:14:33,790 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:33,790 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1463398837] [2022-04-15 09:14:33,790 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:14:33,790 INFO L85 PathProgramCache]: Analyzing trace with hash -784889968, now seen corresponding path program 2 times [2022-04-15 09:14:33,790 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:14:33,791 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1040894412] [2022-04-15 09:14:33,791 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:14:33,791 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:14:33,801 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:14:33,853 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 09:14:33,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:14:33,869 INFO L290 TraceCheckUtils]: 0: Hoare triple {928#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {912#true} is VALID [2022-04-15 09:14:33,869 INFO L290 TraceCheckUtils]: 1: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-15 09:14:33,869 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {912#true} {912#true} #96#return; {912#true} is VALID [2022-04-15 09:14:33,869 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 09:14:33,870 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:14:33,876 INFO L290 TraceCheckUtils]: 0: Hoare triple {912#true} ~cond := #in~cond; {912#true} is VALID [2022-04-15 09:14:33,876 INFO L290 TraceCheckUtils]: 1: Hoare triple {912#true} assume !(0 == ~cond); {912#true} is VALID [2022-04-15 09:14:33,876 INFO L290 TraceCheckUtils]: 2: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-15 09:14:33,876 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {912#true} {912#true} #80#return; {912#true} is VALID [2022-04-15 09:14:33,876 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 14 [2022-04-15 09:14:33,881 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:14:33,884 INFO L290 TraceCheckUtils]: 0: Hoare triple {912#true} ~cond := #in~cond; {912#true} is VALID [2022-04-15 09:14:33,884 INFO L290 TraceCheckUtils]: 1: Hoare triple {912#true} assume !(0 == ~cond); {912#true} is VALID [2022-04-15 09:14:33,884 INFO L290 TraceCheckUtils]: 2: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-15 09:14:33,885 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {912#true} {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} #82#return; {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} is VALID [2022-04-15 09:14:33,885 INFO L272 TraceCheckUtils]: 0: Hoare triple {912#true} call ULTIMATE.init(); {928#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 09:14:33,885 INFO L290 TraceCheckUtils]: 1: Hoare triple {928#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {912#true} is VALID [2022-04-15 09:14:33,885 INFO L290 TraceCheckUtils]: 2: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-15 09:14:33,885 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {912#true} {912#true} #96#return; {912#true} is VALID [2022-04-15 09:14:33,886 INFO L272 TraceCheckUtils]: 4: Hoare triple {912#true} call #t~ret8 := main(); {912#true} is VALID [2022-04-15 09:14:33,886 INFO L290 TraceCheckUtils]: 5: Hoare triple {912#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {912#true} is VALID [2022-04-15 09:14:33,886 INFO L272 TraceCheckUtils]: 6: Hoare triple {912#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {912#true} is VALID [2022-04-15 09:14:33,886 INFO L290 TraceCheckUtils]: 7: Hoare triple {912#true} ~cond := #in~cond; {912#true} is VALID [2022-04-15 09:14:33,886 INFO L290 TraceCheckUtils]: 8: Hoare triple {912#true} assume !(0 == ~cond); {912#true} is VALID [2022-04-15 09:14:33,886 INFO L290 TraceCheckUtils]: 9: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-15 09:14:33,886 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {912#true} {912#true} #80#return; {912#true} is VALID [2022-04-15 09:14:33,888 INFO L290 TraceCheckUtils]: 11: Hoare triple {912#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} is VALID [2022-04-15 09:14:33,889 INFO L290 TraceCheckUtils]: 12: Hoare triple {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} is VALID [2022-04-15 09:14:33,889 INFO L290 TraceCheckUtils]: 13: Hoare triple {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} assume !!(#t~post6 < 10);havoc #t~post6; {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} is VALID [2022-04-15 09:14:33,889 INFO L272 TraceCheckUtils]: 14: Hoare triple {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {912#true} is VALID [2022-04-15 09:14:33,890 INFO L290 TraceCheckUtils]: 15: Hoare triple {912#true} ~cond := #in~cond; {912#true} is VALID [2022-04-15 09:14:33,890 INFO L290 TraceCheckUtils]: 16: Hoare triple {912#true} assume !(0 == ~cond); {912#true} is VALID [2022-04-15 09:14:33,890 INFO L290 TraceCheckUtils]: 17: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-15 09:14:33,890 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {912#true} {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} #82#return; {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} is VALID [2022-04-15 09:14:33,891 INFO L272 TraceCheckUtils]: 19: Hoare triple {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {926#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:14:33,891 INFO L290 TraceCheckUtils]: 20: Hoare triple {926#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {927#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:14:33,894 INFO L290 TraceCheckUtils]: 21: Hoare triple {927#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {913#false} is VALID [2022-04-15 09:14:33,894 INFO L290 TraceCheckUtils]: 22: Hoare triple {913#false} assume !false; {913#false} is VALID [2022-04-15 09:14:33,894 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 09:14:33,894 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:14:33,894 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1040894412] [2022-04-15 09:14:33,895 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1040894412] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:14:33,895 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:14:33,895 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 09:14:33,895 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:14:33,895 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1463398837] [2022-04-15 09:14:33,895 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1463398837] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:14:33,896 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:14:33,896 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 09:14:33,896 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2006509101] [2022-04-15 09:14:33,896 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:14:33,897 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-15 09:14:33,897 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:14:33,897 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 09:14:33,913 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:33,913 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 09:14:33,913 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:33,914 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 09:14:33,914 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-15 09:14:33,914 INFO L87 Difference]: Start difference. First operand 38 states and 47 transitions. Second operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 09:14:34,261 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:34,262 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-15 09:14:34,262 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 09:14:34,262 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-15 09:14:34,262 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:14:34,262 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 09:14:34,264 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 62 transitions. [2022-04-15 09:14:34,264 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 09:14:34,265 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 62 transitions. [2022-04-15 09:14:34,265 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 62 transitions. [2022-04-15 09:14:34,313 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:34,314 INFO L225 Difference]: With dead ends: 52 [2022-04-15 09:14:34,314 INFO L226 Difference]: Without dead ends: 50 [2022-04-15 09:14:34,314 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 15 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=28, Invalid=62, Unknown=0, NotChecked=0, Total=90 [2022-04-15 09:14:34,315 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 23 mSDsluCounter, 44 mSDsCounter, 0 mSdLazyCounter, 112 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 83 SdHoareTripleChecker+Invalid, 126 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 112 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 09:14:34,315 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 83 Invalid, 126 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 112 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 09:14:34,316 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-15 09:14:34,325 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 42. [2022-04-15 09:14:34,325 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:14:34,326 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 42 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 27 states have internal predecessors, (32), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:14:34,326 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 42 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 27 states have internal predecessors, (32), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:14:34,326 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 42 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 27 states have internal predecessors, (32), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:14:34,328 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:34,328 INFO L93 Difference]: Finished difference Result 50 states and 64 transitions. [2022-04-15 09:14:34,328 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2022-04-15 09:14:34,328 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:34,328 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:34,328 INFO L74 IsIncluded]: Start isIncluded. First operand has 42 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 27 states have internal predecessors, (32), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 50 states. [2022-04-15 09:14:34,329 INFO L87 Difference]: Start difference. First operand has 42 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 27 states have internal predecessors, (32), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 50 states. [2022-04-15 09:14:34,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:34,330 INFO L93 Difference]: Finished difference Result 50 states and 64 transitions. [2022-04-15 09:14:34,330 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2022-04-15 09:14:34,331 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:34,331 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:34,331 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:14:34,331 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:14:34,331 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 27 states have internal predecessors, (32), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:14:34,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 50 transitions. [2022-04-15 09:14:34,332 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 50 transitions. Word has length 23 [2022-04-15 09:14:34,332 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:14:34,332 INFO L478 AbstractCegarLoop]: Abstraction has 42 states and 50 transitions. [2022-04-15 09:14:34,332 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 09:14:34,332 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 42 states and 50 transitions. [2022-04-15 09:14:34,374 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:34,374 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 50 transitions. [2022-04-15 09:14:34,375 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 09:14:34,375 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:14:34,375 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:14:34,375 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-04-15 09:14:34,375 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:14:34,375 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:14:34,375 INFO L85 PathProgramCache]: Analyzing trace with hash -1024624683, now seen corresponding path program 1 times [2022-04-15 09:14:34,375 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:34,375 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1328123034] [2022-04-15 09:14:34,376 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:14:34,376 INFO L85 PathProgramCache]: Analyzing trace with hash -1024624683, now seen corresponding path program 2 times [2022-04-15 09:14:34,376 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:14:34,376 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2014165080] [2022-04-15 09:14:34,376 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:14:34,376 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:14:34,385 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:14:34,385 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1159175600] [2022-04-15 09:14:34,385 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:14:34,385 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:14:34,385 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:14:34,386 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:14:34,387 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-15 09:14:34,416 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:14:34,416 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:14:34,417 INFO L263 TraceCheckSpWp]: Trace formula consists of 100 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 09:14:34,423 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:14:34,423 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:14:34,510 INFO L272 TraceCheckUtils]: 0: Hoare triple {1227#true} call ULTIMATE.init(); {1227#true} is VALID [2022-04-15 09:14:34,511 INFO L290 TraceCheckUtils]: 1: Hoare triple {1227#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1227#true} is VALID [2022-04-15 09:14:34,511 INFO L290 TraceCheckUtils]: 2: Hoare triple {1227#true} assume true; {1227#true} is VALID [2022-04-15 09:14:34,511 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1227#true} {1227#true} #96#return; {1227#true} is VALID [2022-04-15 09:14:34,511 INFO L272 TraceCheckUtils]: 4: Hoare triple {1227#true} call #t~ret8 := main(); {1227#true} is VALID [2022-04-15 09:14:34,511 INFO L290 TraceCheckUtils]: 5: Hoare triple {1227#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {1227#true} is VALID [2022-04-15 09:14:34,511 INFO L272 TraceCheckUtils]: 6: Hoare triple {1227#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {1227#true} is VALID [2022-04-15 09:14:34,511 INFO L290 TraceCheckUtils]: 7: Hoare triple {1227#true} ~cond := #in~cond; {1227#true} is VALID [2022-04-15 09:14:34,512 INFO L290 TraceCheckUtils]: 8: Hoare triple {1227#true} assume !(0 == ~cond); {1227#true} is VALID [2022-04-15 09:14:34,512 INFO L290 TraceCheckUtils]: 9: Hoare triple {1227#true} assume true; {1227#true} is VALID [2022-04-15 09:14:34,512 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1227#true} {1227#true} #80#return; {1227#true} is VALID [2022-04-15 09:14:34,512 INFO L290 TraceCheckUtils]: 11: Hoare triple {1227#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:14:34,513 INFO L290 TraceCheckUtils]: 12: Hoare triple {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:14:34,513 INFO L290 TraceCheckUtils]: 13: Hoare triple {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:14:34,513 INFO L272 TraceCheckUtils]: 14: Hoare triple {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {1227#true} is VALID [2022-04-15 09:14:34,513 INFO L290 TraceCheckUtils]: 15: Hoare triple {1227#true} ~cond := #in~cond; {1227#true} is VALID [2022-04-15 09:14:34,513 INFO L290 TraceCheckUtils]: 16: Hoare triple {1227#true} assume !(0 == ~cond); {1227#true} is VALID [2022-04-15 09:14:34,513 INFO L290 TraceCheckUtils]: 17: Hoare triple {1227#true} assume true; {1227#true} is VALID [2022-04-15 09:14:34,514 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1227#true} {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #82#return; {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:14:34,514 INFO L272 TraceCheckUtils]: 19: Hoare triple {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {1227#true} is VALID [2022-04-15 09:14:34,514 INFO L290 TraceCheckUtils]: 20: Hoare triple {1227#true} ~cond := #in~cond; {1227#true} is VALID [2022-04-15 09:14:34,514 INFO L290 TraceCheckUtils]: 21: Hoare triple {1227#true} assume !(0 == ~cond); {1227#true} is VALID [2022-04-15 09:14:34,514 INFO L290 TraceCheckUtils]: 22: Hoare triple {1227#true} assume true; {1227#true} is VALID [2022-04-15 09:14:34,515 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1227#true} {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #84#return; {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:14:34,515 INFO L272 TraceCheckUtils]: 24: Hoare triple {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {1305#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:14:34,516 INFO L290 TraceCheckUtils]: 25: Hoare triple {1305#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1309#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:14:34,516 INFO L290 TraceCheckUtils]: 26: Hoare triple {1309#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1228#false} is VALID [2022-04-15 09:14:34,516 INFO L290 TraceCheckUtils]: 27: Hoare triple {1228#false} assume !false; {1228#false} is VALID [2022-04-15 09:14:34,516 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 09:14:34,516 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 09:14:34,517 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:14:34,517 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2014165080] [2022-04-15 09:14:34,517 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:14:34,517 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1159175600] [2022-04-15 09:14:34,517 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1159175600] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:14:34,517 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:14:34,517 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:14:34,517 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:14:34,517 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1328123034] [2022-04-15 09:14:34,517 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1328123034] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:14:34,517 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:14:34,517 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:14:34,517 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1637655224] [2022-04-15 09:14:34,518 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:14:34,518 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-15 09:14:34,518 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:14:34,518 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 09:14:34,533 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:34,533 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 09:14:34,533 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:34,533 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 09:14:34,533 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 09:14:34,534 INFO L87 Difference]: Start difference. First operand 42 states and 50 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 09:14:34,741 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:34,742 INFO L93 Difference]: Finished difference Result 71 states and 93 transitions. [2022-04-15 09:14:34,742 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 09:14:34,742 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-15 09:14:34,742 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:14:34,742 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 09:14:34,744 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 87 transitions. [2022-04-15 09:14:34,744 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 09:14:34,745 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 87 transitions. [2022-04-15 09:14:34,745 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 87 transitions. [2022-04-15 09:14:34,833 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:34,835 INFO L225 Difference]: With dead ends: 71 [2022-04-15 09:14:34,835 INFO L226 Difference]: Without dead ends: 56 [2022-04-15 09:14:34,835 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 24 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-15 09:14:34,836 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 10 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 143 SdHoareTripleChecker+Invalid, 51 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 48 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:14:34,836 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 143 Invalid, 51 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:14:34,836 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2022-04-15 09:14:34,850 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 56. [2022-04-15 09:14:34,850 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:14:34,850 INFO L82 GeneralOperation]: Start isEquivalent. First operand 56 states. Second operand has 56 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 09:14:34,851 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand has 56 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 09:14:34,851 INFO L87 Difference]: Start difference. First operand 56 states. Second operand has 56 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 09:14:34,867 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:34,867 INFO L93 Difference]: Finished difference Result 56 states and 70 transitions. [2022-04-15 09:14:34,867 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 70 transitions. [2022-04-15 09:14:34,868 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:34,868 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:34,868 INFO L74 IsIncluded]: Start isIncluded. First operand has 56 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 56 states. [2022-04-15 09:14:34,868 INFO L87 Difference]: Start difference. First operand has 56 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 56 states. [2022-04-15 09:14:34,870 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:34,870 INFO L93 Difference]: Finished difference Result 56 states and 70 transitions. [2022-04-15 09:14:34,870 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 70 transitions. [2022-04-15 09:14:34,870 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:34,870 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:34,870 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:14:34,870 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:14:34,871 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 09:14:34,872 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 70 transitions. [2022-04-15 09:14:34,872 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 70 transitions. Word has length 28 [2022-04-15 09:14:34,872 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:14:34,873 INFO L478 AbstractCegarLoop]: Abstraction has 56 states and 70 transitions. [2022-04-15 09:14:34,873 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 09:14:34,873 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 56 states and 70 transitions. [2022-04-15 09:14:34,945 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:34,945 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 70 transitions. [2022-04-15 09:14:34,945 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-15 09:14:34,945 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:14:34,946 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:14:34,964 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-15 09:14:35,161 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:14:35,162 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:14:35,162 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:14:35,162 INFO L85 PathProgramCache]: Analyzing trace with hash 1301357193, now seen corresponding path program 1 times [2022-04-15 09:14:35,162 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:35,162 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [602514982] [2022-04-15 09:14:35,163 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:14:35,163 INFO L85 PathProgramCache]: Analyzing trace with hash 1301357193, now seen corresponding path program 2 times [2022-04-15 09:14:35,163 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:14:35,163 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1626181963] [2022-04-15 09:14:35,163 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:14:35,163 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:14:35,172 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:14:35,172 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [121463098] [2022-04-15 09:14:35,172 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:14:35,172 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:14:35,172 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:14:35,204 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:14:35,204 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-15 09:14:35,236 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:14:35,236 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:14:35,237 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 09:14:35,244 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:14:35,245 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:14:35,366 INFO L272 TraceCheckUtils]: 0: Hoare triple {1683#true} call ULTIMATE.init(); {1683#true} is VALID [2022-04-15 09:14:35,367 INFO L290 TraceCheckUtils]: 1: Hoare triple {1683#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:35,367 INFO L290 TraceCheckUtils]: 2: Hoare triple {1691#(<= ~counter~0 0)} assume true; {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:35,368 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1691#(<= ~counter~0 0)} {1683#true} #96#return; {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:35,368 INFO L272 TraceCheckUtils]: 4: Hoare triple {1691#(<= ~counter~0 0)} call #t~ret8 := main(); {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:35,368 INFO L290 TraceCheckUtils]: 5: Hoare triple {1691#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:35,369 INFO L272 TraceCheckUtils]: 6: Hoare triple {1691#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:35,369 INFO L290 TraceCheckUtils]: 7: Hoare triple {1691#(<= ~counter~0 0)} ~cond := #in~cond; {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:35,369 INFO L290 TraceCheckUtils]: 8: Hoare triple {1691#(<= ~counter~0 0)} assume !(0 == ~cond); {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:35,369 INFO L290 TraceCheckUtils]: 9: Hoare triple {1691#(<= ~counter~0 0)} assume true; {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:35,370 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1691#(<= ~counter~0 0)} {1691#(<= ~counter~0 0)} #80#return; {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:35,370 INFO L290 TraceCheckUtils]: 11: Hoare triple {1691#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:35,370 INFO L290 TraceCheckUtils]: 12: Hoare triple {1691#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,371 INFO L290 TraceCheckUtils]: 13: Hoare triple {1725#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,371 INFO L272 TraceCheckUtils]: 14: Hoare triple {1725#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,371 INFO L290 TraceCheckUtils]: 15: Hoare triple {1725#(<= ~counter~0 1)} ~cond := #in~cond; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,372 INFO L290 TraceCheckUtils]: 16: Hoare triple {1725#(<= ~counter~0 1)} assume !(0 == ~cond); {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,372 INFO L290 TraceCheckUtils]: 17: Hoare triple {1725#(<= ~counter~0 1)} assume true; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,372 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1725#(<= ~counter~0 1)} {1725#(<= ~counter~0 1)} #82#return; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,373 INFO L272 TraceCheckUtils]: 19: Hoare triple {1725#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,373 INFO L290 TraceCheckUtils]: 20: Hoare triple {1725#(<= ~counter~0 1)} ~cond := #in~cond; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,373 INFO L290 TraceCheckUtils]: 21: Hoare triple {1725#(<= ~counter~0 1)} assume !(0 == ~cond); {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,373 INFO L290 TraceCheckUtils]: 22: Hoare triple {1725#(<= ~counter~0 1)} assume true; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,374 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1725#(<= ~counter~0 1)} {1725#(<= ~counter~0 1)} #84#return; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,374 INFO L272 TraceCheckUtils]: 24: Hoare triple {1725#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,375 INFO L290 TraceCheckUtils]: 25: Hoare triple {1725#(<= ~counter~0 1)} ~cond := #in~cond; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,375 INFO L290 TraceCheckUtils]: 26: Hoare triple {1725#(<= ~counter~0 1)} assume !(0 == ~cond); {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,375 INFO L290 TraceCheckUtils]: 27: Hoare triple {1725#(<= ~counter~0 1)} assume true; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,376 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1725#(<= ~counter~0 1)} {1725#(<= ~counter~0 1)} #86#return; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,376 INFO L290 TraceCheckUtils]: 29: Hoare triple {1725#(<= ~counter~0 1)} assume !(~r~0 >= ~d~0); {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:35,376 INFO L290 TraceCheckUtils]: 30: Hoare triple {1725#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1780#(<= |main_#t~post7| 1)} is VALID [2022-04-15 09:14:35,376 INFO L290 TraceCheckUtils]: 31: Hoare triple {1780#(<= |main_#t~post7| 1)} assume !(#t~post7 < 10);havoc #t~post7; {1684#false} is VALID [2022-04-15 09:14:35,377 INFO L272 TraceCheckUtils]: 32: Hoare triple {1684#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {1684#false} is VALID [2022-04-15 09:14:35,377 INFO L290 TraceCheckUtils]: 33: Hoare triple {1684#false} ~cond := #in~cond; {1684#false} is VALID [2022-04-15 09:14:35,377 INFO L290 TraceCheckUtils]: 34: Hoare triple {1684#false} assume 0 == ~cond; {1684#false} is VALID [2022-04-15 09:14:35,377 INFO L290 TraceCheckUtils]: 35: Hoare triple {1684#false} assume !false; {1684#false} is VALID [2022-04-15 09:14:35,377 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-15 09:14:35,377 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 09:14:35,377 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:14:35,377 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1626181963] [2022-04-15 09:14:35,377 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:14:35,377 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [121463098] [2022-04-15 09:14:35,377 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [121463098] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:14:35,377 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:14:35,377 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:14:35,378 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:14:35,378 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [602514982] [2022-04-15 09:14:35,378 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [602514982] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:14:35,378 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:14:35,378 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:14:35,378 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1078368813] [2022-04-15 09:14:35,378 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:14:35,378 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) Word has length 36 [2022-04-15 09:14:35,378 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:14:35,379 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 09:14:35,396 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:35,396 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 09:14:35,396 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:35,396 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 09:14:35,396 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-15 09:14:35,397 INFO L87 Difference]: Start difference. First operand 56 states and 70 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 09:14:35,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:35,503 INFO L93 Difference]: Finished difference Result 76 states and 86 transitions. [2022-04-15 09:14:35,503 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 09:14:35,504 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) Word has length 36 [2022-04-15 09:14:35,504 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:14:35,504 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 09:14:35,505 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-15 09:14:35,505 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 09:14:35,506 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-15 09:14:35,506 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-15 09:14:35,552 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:35,554 INFO L225 Difference]: With dead ends: 76 [2022-04-15 09:14:35,554 INFO L226 Difference]: Without dead ends: 69 [2022-04-15 09:14:35,554 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 32 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-15 09:14:35,554 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 7 mSDsluCounter, 75 mSDsCounter, 0 mSdLazyCounter, 17 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 117 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 17 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:14:35,555 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 117 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 17 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:14:35,555 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2022-04-15 09:14:35,581 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 68. [2022-04-15 09:14:35,581 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:14:35,581 INFO L82 GeneralOperation]: Start isEquivalent. First operand 69 states. Second operand has 68 states, 42 states have (on average 1.1666666666666667) internal successors, (49), 44 states have internal predecessors, (49), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 09:14:35,581 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand has 68 states, 42 states have (on average 1.1666666666666667) internal successors, (49), 44 states have internal predecessors, (49), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 09:14:35,581 INFO L87 Difference]: Start difference. First operand 69 states. Second operand has 68 states, 42 states have (on average 1.1666666666666667) internal successors, (49), 44 states have internal predecessors, (49), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 09:14:35,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:35,583 INFO L93 Difference]: Finished difference Result 69 states and 79 transitions. [2022-04-15 09:14:35,583 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 79 transitions. [2022-04-15 09:14:35,583 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:35,583 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:35,584 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 42 states have (on average 1.1666666666666667) internal successors, (49), 44 states have internal predecessors, (49), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 69 states. [2022-04-15 09:14:35,584 INFO L87 Difference]: Start difference. First operand has 68 states, 42 states have (on average 1.1666666666666667) internal successors, (49), 44 states have internal predecessors, (49), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 69 states. [2022-04-15 09:14:35,585 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:35,585 INFO L93 Difference]: Finished difference Result 69 states and 79 transitions. [2022-04-15 09:14:35,585 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 79 transitions. [2022-04-15 09:14:35,586 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:35,586 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:35,586 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:14:35,586 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:14:35,586 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 42 states have (on average 1.1666666666666667) internal successors, (49), 44 states have internal predecessors, (49), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 09:14:35,587 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 78 transitions. [2022-04-15 09:14:35,587 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 78 transitions. Word has length 36 [2022-04-15 09:14:35,587 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:14:35,588 INFO L478 AbstractCegarLoop]: Abstraction has 68 states and 78 transitions. [2022-04-15 09:14:35,588 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 09:14:35,588 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 78 transitions. [2022-04-15 09:14:35,659 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:35,660 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 78 transitions. [2022-04-15 09:14:35,660 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-15 09:14:35,660 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:14:35,660 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:14:35,677 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-15 09:14:35,876 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:14:35,876 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:14:35,876 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:14:35,876 INFO L85 PathProgramCache]: Analyzing trace with hash 1303085071, now seen corresponding path program 1 times [2022-04-15 09:14:35,877 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:35,877 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [498391463] [2022-04-15 09:14:35,877 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:14:35,877 INFO L85 PathProgramCache]: Analyzing trace with hash 1303085071, now seen corresponding path program 2 times [2022-04-15 09:14:35,877 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:14:35,877 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1564209672] [2022-04-15 09:14:35,877 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:14:35,877 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:14:35,886 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:14:35,887 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1169840072] [2022-04-15 09:14:35,887 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:14:35,887 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:14:35,887 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:14:35,915 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:14:35,925 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-15 09:14:35,954 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:14:35,954 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:14:35,954 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 09:14:35,961 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:14:35,962 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:14:36,099 INFO L272 TraceCheckUtils]: 0: Hoare triple {2221#true} call ULTIMATE.init(); {2221#true} is VALID [2022-04-15 09:14:36,099 INFO L290 TraceCheckUtils]: 1: Hoare triple {2221#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2221#true} is VALID [2022-04-15 09:14:36,099 INFO L290 TraceCheckUtils]: 2: Hoare triple {2221#true} assume true; {2221#true} is VALID [2022-04-15 09:14:36,099 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2221#true} {2221#true} #96#return; {2221#true} is VALID [2022-04-15 09:14:36,099 INFO L272 TraceCheckUtils]: 4: Hoare triple {2221#true} call #t~ret8 := main(); {2221#true} is VALID [2022-04-15 09:14:36,099 INFO L290 TraceCheckUtils]: 5: Hoare triple {2221#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {2221#true} is VALID [2022-04-15 09:14:36,099 INFO L272 TraceCheckUtils]: 6: Hoare triple {2221#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2221#true} is VALID [2022-04-15 09:14:36,099 INFO L290 TraceCheckUtils]: 7: Hoare triple {2221#true} ~cond := #in~cond; {2221#true} is VALID [2022-04-15 09:14:36,100 INFO L290 TraceCheckUtils]: 8: Hoare triple {2221#true} assume !(0 == ~cond); {2221#true} is VALID [2022-04-15 09:14:36,100 INFO L290 TraceCheckUtils]: 9: Hoare triple {2221#true} assume true; {2221#true} is VALID [2022-04-15 09:14:36,100 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2221#true} {2221#true} #80#return; {2221#true} is VALID [2022-04-15 09:14:36,100 INFO L290 TraceCheckUtils]: 11: Hoare triple {2221#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:14:36,101 INFO L290 TraceCheckUtils]: 12: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:14:36,101 INFO L290 TraceCheckUtils]: 13: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:14:36,101 INFO L272 TraceCheckUtils]: 14: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {2221#true} is VALID [2022-04-15 09:14:36,101 INFO L290 TraceCheckUtils]: 15: Hoare triple {2221#true} ~cond := #in~cond; {2221#true} is VALID [2022-04-15 09:14:36,101 INFO L290 TraceCheckUtils]: 16: Hoare triple {2221#true} assume !(0 == ~cond); {2221#true} is VALID [2022-04-15 09:14:36,101 INFO L290 TraceCheckUtils]: 17: Hoare triple {2221#true} assume true; {2221#true} is VALID [2022-04-15 09:14:36,102 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2221#true} {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #82#return; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:14:36,102 INFO L272 TraceCheckUtils]: 19: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {2221#true} is VALID [2022-04-15 09:14:36,102 INFO L290 TraceCheckUtils]: 20: Hoare triple {2221#true} ~cond := #in~cond; {2221#true} is VALID [2022-04-15 09:14:36,102 INFO L290 TraceCheckUtils]: 21: Hoare triple {2221#true} assume !(0 == ~cond); {2221#true} is VALID [2022-04-15 09:14:36,102 INFO L290 TraceCheckUtils]: 22: Hoare triple {2221#true} assume true; {2221#true} is VALID [2022-04-15 09:14:36,102 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2221#true} {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #84#return; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:14:36,103 INFO L272 TraceCheckUtils]: 24: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {2221#true} is VALID [2022-04-15 09:14:36,103 INFO L290 TraceCheckUtils]: 25: Hoare triple {2221#true} ~cond := #in~cond; {2221#true} is VALID [2022-04-15 09:14:36,103 INFO L290 TraceCheckUtils]: 26: Hoare triple {2221#true} assume !(0 == ~cond); {2221#true} is VALID [2022-04-15 09:14:36,103 INFO L290 TraceCheckUtils]: 27: Hoare triple {2221#true} assume true; {2221#true} is VALID [2022-04-15 09:14:36,103 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2221#true} {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #86#return; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:14:36,104 INFO L290 TraceCheckUtils]: 29: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !(~r~0 >= ~d~0); {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:14:36,104 INFO L290 TraceCheckUtils]: 30: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:14:36,105 INFO L290 TraceCheckUtils]: 31: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !!(#t~post7 < 10);havoc #t~post7; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:14:36,105 INFO L272 TraceCheckUtils]: 32: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {2323#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:14:36,106 INFO L290 TraceCheckUtils]: 33: Hoare triple {2323#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2327#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:14:36,106 INFO L290 TraceCheckUtils]: 34: Hoare triple {2327#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2222#false} is VALID [2022-04-15 09:14:36,106 INFO L290 TraceCheckUtils]: 35: Hoare triple {2222#false} assume !false; {2222#false} is VALID [2022-04-15 09:14:36,106 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-15 09:14:36,106 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 09:14:36,106 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:14:36,106 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1564209672] [2022-04-15 09:14:36,106 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:14:36,106 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1169840072] [2022-04-15 09:14:36,107 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1169840072] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:14:36,107 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:14:36,107 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:14:36,107 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:14:36,107 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [498391463] [2022-04-15 09:14:36,107 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [498391463] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:14:36,107 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:14:36,107 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:14:36,107 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1067331479] [2022-04-15 09:14:36,107 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:14:36,107 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 36 [2022-04-15 09:14:36,108 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:14:36,108 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:14:36,129 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:36,129 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 09:14:36,129 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:36,129 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 09:14:36,129 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 09:14:36,129 INFO L87 Difference]: Start difference. First operand 68 states and 78 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:14:36,311 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:36,311 INFO L93 Difference]: Finished difference Result 82 states and 97 transitions. [2022-04-15 09:14:36,311 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 09:14:36,311 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 36 [2022-04-15 09:14:36,311 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:14:36,311 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:14:36,312 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 61 transitions. [2022-04-15 09:14:36,312 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:14:36,313 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 61 transitions. [2022-04-15 09:14:36,313 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 61 transitions. [2022-04-15 09:14:36,355 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:36,356 INFO L225 Difference]: With dead ends: 82 [2022-04-15 09:14:36,357 INFO L226 Difference]: Without dead ends: 70 [2022-04-15 09:14:36,357 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 36 GetRequests, 32 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-15 09:14:36,357 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 11 mSDsluCounter, 83 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 118 SdHoareTripleChecker+Invalid, 51 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 48 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:14:36,357 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 118 Invalid, 51 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:14:36,358 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-15 09:14:36,393 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 69. [2022-04-15 09:14:36,393 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:14:36,393 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand has 69 states, 43 states have (on average 1.2093023255813953) internal successors, (52), 45 states have internal predecessors, (52), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-15 09:14:36,394 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand has 69 states, 43 states have (on average 1.2093023255813953) internal successors, (52), 45 states have internal predecessors, (52), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-15 09:14:36,394 INFO L87 Difference]: Start difference. First operand 70 states. Second operand has 69 states, 43 states have (on average 1.2093023255813953) internal successors, (52), 45 states have internal predecessors, (52), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-15 09:14:36,395 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:36,395 INFO L93 Difference]: Finished difference Result 70 states and 83 transitions. [2022-04-15 09:14:36,396 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 83 transitions. [2022-04-15 09:14:36,396 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:36,396 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:36,396 INFO L74 IsIncluded]: Start isIncluded. First operand has 69 states, 43 states have (on average 1.2093023255813953) internal successors, (52), 45 states have internal predecessors, (52), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 70 states. [2022-04-15 09:14:36,396 INFO L87 Difference]: Start difference. First operand has 69 states, 43 states have (on average 1.2093023255813953) internal successors, (52), 45 states have internal predecessors, (52), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 70 states. [2022-04-15 09:14:36,398 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:36,398 INFO L93 Difference]: Finished difference Result 70 states and 83 transitions. [2022-04-15 09:14:36,398 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 83 transitions. [2022-04-15 09:14:36,398 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:36,398 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:36,398 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:14:36,398 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:14:36,398 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 69 states, 43 states have (on average 1.2093023255813953) internal successors, (52), 45 states have internal predecessors, (52), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-15 09:14:36,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 69 states to 69 states and 82 transitions. [2022-04-15 09:14:36,400 INFO L78 Accepts]: Start accepts. Automaton has 69 states and 82 transitions. Word has length 36 [2022-04-15 09:14:36,400 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:14:36,400 INFO L478 AbstractCegarLoop]: Abstraction has 69 states and 82 transitions. [2022-04-15 09:14:36,400 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:14:36,400 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 69 states and 82 transitions. [2022-04-15 09:14:36,474 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:36,474 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 82 transitions. [2022-04-15 09:14:36,475 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-15 09:14:36,475 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:14:36,475 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:14:36,491 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-15 09:14:36,675 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:14:36,675 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:14:36,676 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:14:36,676 INFO L85 PathProgramCache]: Analyzing trace with hash 817878903, now seen corresponding path program 1 times [2022-04-15 09:14:36,676 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:36,676 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [693053575] [2022-04-15 09:14:42,438 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:14:42,438 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:14:42,438 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:14:42,439 INFO L85 PathProgramCache]: Analyzing trace with hash 817878903, now seen corresponding path program 2 times [2022-04-15 09:14:42,439 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:14:42,439 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [711450131] [2022-04-15 09:14:42,439 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:14:42,439 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:14:42,448 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:14:42,448 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [999043304] [2022-04-15 09:14:42,448 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:14:42,448 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:14:42,448 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:14:42,449 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:14:42,450 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-15 09:14:42,481 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:14:42,481 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:14:42,482 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 09:14:42,491 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:14:42,492 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:14:42,669 INFO L272 TraceCheckUtils]: 0: Hoare triple {2777#true} call ULTIMATE.init(); {2777#true} is VALID [2022-04-15 09:14:42,669 INFO L290 TraceCheckUtils]: 1: Hoare triple {2777#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:42,670 INFO L290 TraceCheckUtils]: 2: Hoare triple {2785#(<= ~counter~0 0)} assume true; {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:42,670 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2785#(<= ~counter~0 0)} {2777#true} #96#return; {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:42,670 INFO L272 TraceCheckUtils]: 4: Hoare triple {2785#(<= ~counter~0 0)} call #t~ret8 := main(); {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:42,671 INFO L290 TraceCheckUtils]: 5: Hoare triple {2785#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:42,671 INFO L272 TraceCheckUtils]: 6: Hoare triple {2785#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:42,671 INFO L290 TraceCheckUtils]: 7: Hoare triple {2785#(<= ~counter~0 0)} ~cond := #in~cond; {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:42,672 INFO L290 TraceCheckUtils]: 8: Hoare triple {2785#(<= ~counter~0 0)} assume !(0 == ~cond); {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:42,672 INFO L290 TraceCheckUtils]: 9: Hoare triple {2785#(<= ~counter~0 0)} assume true; {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:42,672 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2785#(<= ~counter~0 0)} {2785#(<= ~counter~0 0)} #80#return; {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:42,673 INFO L290 TraceCheckUtils]: 11: Hoare triple {2785#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:14:42,673 INFO L290 TraceCheckUtils]: 12: Hoare triple {2785#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,673 INFO L290 TraceCheckUtils]: 13: Hoare triple {2819#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,674 INFO L272 TraceCheckUtils]: 14: Hoare triple {2819#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,674 INFO L290 TraceCheckUtils]: 15: Hoare triple {2819#(<= ~counter~0 1)} ~cond := #in~cond; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,674 INFO L290 TraceCheckUtils]: 16: Hoare triple {2819#(<= ~counter~0 1)} assume !(0 == ~cond); {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,675 INFO L290 TraceCheckUtils]: 17: Hoare triple {2819#(<= ~counter~0 1)} assume true; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,675 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2819#(<= ~counter~0 1)} {2819#(<= ~counter~0 1)} #82#return; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,676 INFO L272 TraceCheckUtils]: 19: Hoare triple {2819#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,676 INFO L290 TraceCheckUtils]: 20: Hoare triple {2819#(<= ~counter~0 1)} ~cond := #in~cond; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,676 INFO L290 TraceCheckUtils]: 21: Hoare triple {2819#(<= ~counter~0 1)} assume !(0 == ~cond); {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,676 INFO L290 TraceCheckUtils]: 22: Hoare triple {2819#(<= ~counter~0 1)} assume true; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,677 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2819#(<= ~counter~0 1)} {2819#(<= ~counter~0 1)} #84#return; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,677 INFO L272 TraceCheckUtils]: 24: Hoare triple {2819#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,678 INFO L290 TraceCheckUtils]: 25: Hoare triple {2819#(<= ~counter~0 1)} ~cond := #in~cond; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,678 INFO L290 TraceCheckUtils]: 26: Hoare triple {2819#(<= ~counter~0 1)} assume !(0 == ~cond); {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,678 INFO L290 TraceCheckUtils]: 27: Hoare triple {2819#(<= ~counter~0 1)} assume true; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,679 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2819#(<= ~counter~0 1)} {2819#(<= ~counter~0 1)} #86#return; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,679 INFO L290 TraceCheckUtils]: 29: Hoare triple {2819#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:14:42,680 INFO L290 TraceCheckUtils]: 30: Hoare triple {2819#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2874#(<= |main_#t~post6| 1)} is VALID [2022-04-15 09:14:42,680 INFO L290 TraceCheckUtils]: 31: Hoare triple {2874#(<= |main_#t~post6| 1)} assume !(#t~post6 < 10);havoc #t~post6; {2778#false} is VALID [2022-04-15 09:14:42,680 INFO L290 TraceCheckUtils]: 32: Hoare triple {2778#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2778#false} is VALID [2022-04-15 09:14:42,680 INFO L290 TraceCheckUtils]: 33: Hoare triple {2778#false} assume !(#t~post7 < 10);havoc #t~post7; {2778#false} is VALID [2022-04-15 09:14:42,680 INFO L272 TraceCheckUtils]: 34: Hoare triple {2778#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {2778#false} is VALID [2022-04-15 09:14:42,680 INFO L290 TraceCheckUtils]: 35: Hoare triple {2778#false} ~cond := #in~cond; {2778#false} is VALID [2022-04-15 09:14:42,680 INFO L290 TraceCheckUtils]: 36: Hoare triple {2778#false} assume !(0 == ~cond); {2778#false} is VALID [2022-04-15 09:14:42,681 INFO L290 TraceCheckUtils]: 37: Hoare triple {2778#false} assume true; {2778#false} is VALID [2022-04-15 09:14:42,681 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2778#false} {2778#false} #92#return; {2778#false} is VALID [2022-04-15 09:14:42,681 INFO L272 TraceCheckUtils]: 39: Hoare triple {2778#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {2778#false} is VALID [2022-04-15 09:14:42,681 INFO L290 TraceCheckUtils]: 40: Hoare triple {2778#false} ~cond := #in~cond; {2778#false} is VALID [2022-04-15 09:14:42,681 INFO L290 TraceCheckUtils]: 41: Hoare triple {2778#false} assume 0 == ~cond; {2778#false} is VALID [2022-04-15 09:14:42,681 INFO L290 TraceCheckUtils]: 42: Hoare triple {2778#false} assume !false; {2778#false} is VALID [2022-04-15 09:14:42,681 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 18 proven. 2 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2022-04-15 09:14:42,681 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:14:42,860 INFO L290 TraceCheckUtils]: 42: Hoare triple {2778#false} assume !false; {2778#false} is VALID [2022-04-15 09:14:42,861 INFO L290 TraceCheckUtils]: 41: Hoare triple {2778#false} assume 0 == ~cond; {2778#false} is VALID [2022-04-15 09:14:42,861 INFO L290 TraceCheckUtils]: 40: Hoare triple {2778#false} ~cond := #in~cond; {2778#false} is VALID [2022-04-15 09:14:42,861 INFO L272 TraceCheckUtils]: 39: Hoare triple {2778#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {2778#false} is VALID [2022-04-15 09:14:42,861 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2777#true} {2778#false} #92#return; {2778#false} is VALID [2022-04-15 09:14:42,861 INFO L290 TraceCheckUtils]: 37: Hoare triple {2777#true} assume true; {2777#true} is VALID [2022-04-15 09:14:42,861 INFO L290 TraceCheckUtils]: 36: Hoare triple {2777#true} assume !(0 == ~cond); {2777#true} is VALID [2022-04-15 09:14:42,861 INFO L290 TraceCheckUtils]: 35: Hoare triple {2777#true} ~cond := #in~cond; {2777#true} is VALID [2022-04-15 09:14:42,861 INFO L272 TraceCheckUtils]: 34: Hoare triple {2778#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {2777#true} is VALID [2022-04-15 09:14:42,861 INFO L290 TraceCheckUtils]: 33: Hoare triple {2778#false} assume !(#t~post7 < 10);havoc #t~post7; {2778#false} is VALID [2022-04-15 09:14:42,861 INFO L290 TraceCheckUtils]: 32: Hoare triple {2778#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2778#false} is VALID [2022-04-15 09:14:42,862 INFO L290 TraceCheckUtils]: 31: Hoare triple {2944#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {2778#false} is VALID [2022-04-15 09:14:42,863 INFO L290 TraceCheckUtils]: 30: Hoare triple {2948#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2944#(< |main_#t~post6| 10)} is VALID [2022-04-15 09:14:42,863 INFO L290 TraceCheckUtils]: 29: Hoare triple {2948#(< ~counter~0 10)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {2948#(< ~counter~0 10)} is VALID [2022-04-15 09:14:42,864 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2777#true} {2948#(< ~counter~0 10)} #86#return; {2948#(< ~counter~0 10)} is VALID [2022-04-15 09:14:42,864 INFO L290 TraceCheckUtils]: 27: Hoare triple {2777#true} assume true; {2777#true} is VALID [2022-04-15 09:14:42,864 INFO L290 TraceCheckUtils]: 26: Hoare triple {2777#true} assume !(0 == ~cond); {2777#true} is VALID [2022-04-15 09:14:42,864 INFO L290 TraceCheckUtils]: 25: Hoare triple {2777#true} ~cond := #in~cond; {2777#true} is VALID [2022-04-15 09:14:42,864 INFO L272 TraceCheckUtils]: 24: Hoare triple {2948#(< ~counter~0 10)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {2777#true} is VALID [2022-04-15 09:14:42,864 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2777#true} {2948#(< ~counter~0 10)} #84#return; {2948#(< ~counter~0 10)} is VALID [2022-04-15 09:14:42,864 INFO L290 TraceCheckUtils]: 22: Hoare triple {2777#true} assume true; {2777#true} is VALID [2022-04-15 09:14:42,865 INFO L290 TraceCheckUtils]: 21: Hoare triple {2777#true} assume !(0 == ~cond); {2777#true} is VALID [2022-04-15 09:14:42,865 INFO L290 TraceCheckUtils]: 20: Hoare triple {2777#true} ~cond := #in~cond; {2777#true} is VALID [2022-04-15 09:14:42,865 INFO L272 TraceCheckUtils]: 19: Hoare triple {2948#(< ~counter~0 10)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {2777#true} is VALID [2022-04-15 09:14:42,865 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2777#true} {2948#(< ~counter~0 10)} #82#return; {2948#(< ~counter~0 10)} is VALID [2022-04-15 09:14:42,865 INFO L290 TraceCheckUtils]: 17: Hoare triple {2777#true} assume true; {2777#true} is VALID [2022-04-15 09:14:42,865 INFO L290 TraceCheckUtils]: 16: Hoare triple {2777#true} assume !(0 == ~cond); {2777#true} is VALID [2022-04-15 09:14:42,865 INFO L290 TraceCheckUtils]: 15: Hoare triple {2777#true} ~cond := #in~cond; {2777#true} is VALID [2022-04-15 09:14:42,865 INFO L272 TraceCheckUtils]: 14: Hoare triple {2948#(< ~counter~0 10)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {2777#true} is VALID [2022-04-15 09:14:42,866 INFO L290 TraceCheckUtils]: 13: Hoare triple {2948#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {2948#(< ~counter~0 10)} is VALID [2022-04-15 09:14:42,866 INFO L290 TraceCheckUtils]: 12: Hoare triple {3003#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2948#(< ~counter~0 10)} is VALID [2022-04-15 09:14:42,866 INFO L290 TraceCheckUtils]: 11: Hoare triple {3003#(< ~counter~0 9)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {3003#(< ~counter~0 9)} is VALID [2022-04-15 09:14:42,867 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2777#true} {3003#(< ~counter~0 9)} #80#return; {3003#(< ~counter~0 9)} is VALID [2022-04-15 09:14:42,867 INFO L290 TraceCheckUtils]: 9: Hoare triple {2777#true} assume true; {2777#true} is VALID [2022-04-15 09:14:42,867 INFO L290 TraceCheckUtils]: 8: Hoare triple {2777#true} assume !(0 == ~cond); {2777#true} is VALID [2022-04-15 09:14:42,867 INFO L290 TraceCheckUtils]: 7: Hoare triple {2777#true} ~cond := #in~cond; {2777#true} is VALID [2022-04-15 09:14:42,867 INFO L272 TraceCheckUtils]: 6: Hoare triple {3003#(< ~counter~0 9)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2777#true} is VALID [2022-04-15 09:14:42,867 INFO L290 TraceCheckUtils]: 5: Hoare triple {3003#(< ~counter~0 9)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {3003#(< ~counter~0 9)} is VALID [2022-04-15 09:14:42,868 INFO L272 TraceCheckUtils]: 4: Hoare triple {3003#(< ~counter~0 9)} call #t~ret8 := main(); {3003#(< ~counter~0 9)} is VALID [2022-04-15 09:14:42,868 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3003#(< ~counter~0 9)} {2777#true} #96#return; {3003#(< ~counter~0 9)} is VALID [2022-04-15 09:14:42,868 INFO L290 TraceCheckUtils]: 2: Hoare triple {3003#(< ~counter~0 9)} assume true; {3003#(< ~counter~0 9)} is VALID [2022-04-15 09:14:42,869 INFO L290 TraceCheckUtils]: 1: Hoare triple {2777#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3003#(< ~counter~0 9)} is VALID [2022-04-15 09:14:42,869 INFO L272 TraceCheckUtils]: 0: Hoare triple {2777#true} call ULTIMATE.init(); {2777#true} is VALID [2022-04-15 09:14:42,869 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-15 09:14:42,869 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:14:42,869 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [711450131] [2022-04-15 09:14:42,869 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:14:42,869 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [999043304] [2022-04-15 09:14:42,869 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [999043304] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:14:42,869 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:14:42,869 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-15 09:14:42,870 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:14:42,870 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [693053575] [2022-04-15 09:14:42,870 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [693053575] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:14:42,870 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:14:42,870 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:14:42,870 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2109788531] [2022-04-15 09:14:42,870 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:14:42,870 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 3 states have call predecessors, (6), 4 states have call successors, (6) Word has length 43 [2022-04-15 09:14:42,870 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:14:42,870 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 3 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-15 09:14:42,912 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:42,912 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 09:14:42,912 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:42,913 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 09:14:42,913 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-15 09:14:42,914 INFO L87 Difference]: Start difference. First operand 69 states and 82 transitions. Second operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 3 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-15 09:14:43,091 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:43,091 INFO L93 Difference]: Finished difference Result 96 states and 120 transitions. [2022-04-15 09:14:43,091 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 09:14:43,092 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 3 states have call predecessors, (6), 4 states have call successors, (6) Word has length 43 [2022-04-15 09:14:43,093 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:14:43,093 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 3 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-15 09:14:43,095 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 76 transitions. [2022-04-15 09:14:43,095 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 3 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-15 09:14:43,096 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 76 transitions. [2022-04-15 09:14:43,096 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 76 transitions. [2022-04-15 09:14:43,153 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:43,155 INFO L225 Difference]: With dead ends: 96 [2022-04-15 09:14:43,155 INFO L226 Difference]: Without dead ends: 71 [2022-04-15 09:14:43,157 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 86 GetRequests, 79 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-04-15 09:14:43,158 INFO L913 BasicCegarLoop]: 43 mSDtfsCounter, 6 mSDsluCounter, 74 mSDsCounter, 0 mSdLazyCounter, 16 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 117 SdHoareTripleChecker+Invalid, 21 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 16 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:14:43,158 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 117 Invalid, 21 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 16 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:14:43,160 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-15 09:14:43,204 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 71. [2022-04-15 09:14:43,204 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:14:43,205 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 71 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-15 09:14:43,210 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 71 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-15 09:14:43,212 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 71 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-15 09:14:43,214 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:43,214 INFO L93 Difference]: Finished difference Result 71 states and 84 transitions. [2022-04-15 09:14:43,214 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 84 transitions. [2022-04-15 09:14:43,215 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:43,215 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:43,215 INFO L74 IsIncluded]: Start isIncluded. First operand has 71 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 71 states. [2022-04-15 09:14:43,216 INFO L87 Difference]: Start difference. First operand has 71 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 71 states. [2022-04-15 09:14:43,218 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:43,218 INFO L93 Difference]: Finished difference Result 71 states and 84 transitions. [2022-04-15 09:14:43,218 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 84 transitions. [2022-04-15 09:14:43,218 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:43,218 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:43,218 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:14:43,218 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:14:43,218 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-15 09:14:43,220 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 84 transitions. [2022-04-15 09:14:43,220 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 84 transitions. Word has length 43 [2022-04-15 09:14:43,220 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:14:43,220 INFO L478 AbstractCegarLoop]: Abstraction has 71 states and 84 transitions. [2022-04-15 09:14:43,221 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 3 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-15 09:14:43,222 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 71 states and 84 transitions. [2022-04-15 09:14:43,293 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:43,293 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 84 transitions. [2022-04-15 09:14:43,294 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-15 09:14:43,294 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:14:43,294 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:14:43,310 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-04-15 09:14:43,503 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:14:43,503 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:14:43,504 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:14:43,504 INFO L85 PathProgramCache]: Analyzing trace with hash 1861890039, now seen corresponding path program 1 times [2022-04-15 09:14:43,504 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:43,504 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1456832220] [2022-04-15 09:14:51,953 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:14:51,953 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:14:51,954 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:14:51,954 INFO L85 PathProgramCache]: Analyzing trace with hash 1861890039, now seen corresponding path program 2 times [2022-04-15 09:14:51,954 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:14:51,954 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1467366661] [2022-04-15 09:14:51,954 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:14:51,954 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:14:51,961 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:14:51,961 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [615798170] [2022-04-15 09:14:51,961 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:14:51,961 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:14:51,961 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:14:51,975 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:14:52,033 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-15 09:14:52,069 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:14:52,069 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:14:52,070 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-15 09:14:52,077 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:14:52,078 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:14:52,665 INFO L272 TraceCheckUtils]: 0: Hoare triple {3520#true} call ULTIMATE.init(); {3520#true} is VALID [2022-04-15 09:14:52,665 INFO L290 TraceCheckUtils]: 1: Hoare triple {3520#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3520#true} is VALID [2022-04-15 09:14:52,665 INFO L290 TraceCheckUtils]: 2: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:14:52,665 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3520#true} {3520#true} #96#return; {3520#true} is VALID [2022-04-15 09:14:52,665 INFO L272 TraceCheckUtils]: 4: Hoare triple {3520#true} call #t~ret8 := main(); {3520#true} is VALID [2022-04-15 09:14:52,665 INFO L290 TraceCheckUtils]: 5: Hoare triple {3520#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {3520#true} is VALID [2022-04-15 09:14:52,665 INFO L272 TraceCheckUtils]: 6: Hoare triple {3520#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:14:52,666 INFO L290 TraceCheckUtils]: 7: Hoare triple {3520#true} ~cond := #in~cond; {3546#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 09:14:52,666 INFO L290 TraceCheckUtils]: 8: Hoare triple {3546#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3550#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 09:14:52,666 INFO L290 TraceCheckUtils]: 9: Hoare triple {3550#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3550#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 09:14:52,667 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3550#(not (= |assume_abort_if_not_#in~cond| 0))} {3520#true} #80#return; {3557#(<= 1 (mod main_~B~0 4294967296))} is VALID [2022-04-15 09:14:52,667 INFO L290 TraceCheckUtils]: 11: Hoare triple {3557#(<= 1 (mod main_~B~0 4294967296))} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:14:52,668 INFO L290 TraceCheckUtils]: 12: Hoare triple {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:14:52,668 INFO L290 TraceCheckUtils]: 13: Hoare triple {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:14:52,668 INFO L272 TraceCheckUtils]: 14: Hoare triple {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:14:52,668 INFO L290 TraceCheckUtils]: 15: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:14:52,668 INFO L290 TraceCheckUtils]: 16: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:14:52,668 INFO L290 TraceCheckUtils]: 17: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:14:52,669 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3520#true} {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #82#return; {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:14:52,669 INFO L272 TraceCheckUtils]: 19: Hoare triple {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:14:52,669 INFO L290 TraceCheckUtils]: 20: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:14:52,669 INFO L290 TraceCheckUtils]: 21: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:14:52,669 INFO L290 TraceCheckUtils]: 22: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:14:52,670 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3520#true} {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #84#return; {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:14:52,670 INFO L272 TraceCheckUtils]: 24: Hoare triple {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:14:52,670 INFO L290 TraceCheckUtils]: 25: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:14:52,670 INFO L290 TraceCheckUtils]: 26: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:14:52,670 INFO L290 TraceCheckUtils]: 27: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:14:52,670 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3520#true} {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #86#return; {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:14:52,671 INFO L290 TraceCheckUtils]: 29: Hoare triple {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:14:52,671 INFO L290 TraceCheckUtils]: 30: Hoare triple {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:14:52,672 INFO L290 TraceCheckUtils]: 31: Hoare triple {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 10);havoc #t~post6; {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:14:52,672 INFO L272 TraceCheckUtils]: 32: Hoare triple {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:14:52,672 INFO L290 TraceCheckUtils]: 33: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:14:52,672 INFO L290 TraceCheckUtils]: 34: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:14:52,672 INFO L290 TraceCheckUtils]: 35: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:14:52,672 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3520#true} {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #82#return; {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:14:52,673 INFO L272 TraceCheckUtils]: 37: Hoare triple {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:14:52,673 INFO L290 TraceCheckUtils]: 38: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:14:52,673 INFO L290 TraceCheckUtils]: 39: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:14:52,673 INFO L290 TraceCheckUtils]: 40: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:14:52,673 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3520#true} {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #84#return; {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:14:52,674 INFO L272 TraceCheckUtils]: 42: Hoare triple {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {3656#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:14:52,674 INFO L290 TraceCheckUtils]: 43: Hoare triple {3656#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3660#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:14:52,674 INFO L290 TraceCheckUtils]: 44: Hoare triple {3660#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3521#false} is VALID [2022-04-15 09:14:52,675 INFO L290 TraceCheckUtils]: 45: Hoare triple {3521#false} assume !false; {3521#false} is VALID [2022-04-15 09:14:52,675 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 10 proven. 5 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-15 09:14:52,675 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:14:52,984 INFO L290 TraceCheckUtils]: 45: Hoare triple {3521#false} assume !false; {3521#false} is VALID [2022-04-15 09:14:52,984 INFO L290 TraceCheckUtils]: 44: Hoare triple {3660#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3521#false} is VALID [2022-04-15 09:14:52,984 INFO L290 TraceCheckUtils]: 43: Hoare triple {3656#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3660#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:14:52,985 INFO L272 TraceCheckUtils]: 42: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {3656#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:14:52,985 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3520#true} {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #84#return; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:14:52,986 INFO L290 TraceCheckUtils]: 40: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:14:52,986 INFO L290 TraceCheckUtils]: 39: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:14:52,986 INFO L290 TraceCheckUtils]: 38: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:14:52,986 INFO L272 TraceCheckUtils]: 37: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:14:52,986 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3520#true} {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #82#return; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:14:52,986 INFO L290 TraceCheckUtils]: 35: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:14:52,986 INFO L290 TraceCheckUtils]: 34: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:14:52,986 INFO L290 TraceCheckUtils]: 33: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:14:52,986 INFO L272 TraceCheckUtils]: 32: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:14:52,987 INFO L290 TraceCheckUtils]: 31: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 10);havoc #t~post6; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:14:52,987 INFO L290 TraceCheckUtils]: 30: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:14:52,989 INFO L290 TraceCheckUtils]: 29: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:14:52,989 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3520#true} {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #86#return; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:14:52,989 INFO L290 TraceCheckUtils]: 27: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:14:52,989 INFO L290 TraceCheckUtils]: 26: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:14:52,989 INFO L290 TraceCheckUtils]: 25: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:14:52,989 INFO L272 TraceCheckUtils]: 24: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:14:52,990 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3520#true} {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #84#return; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:14:52,990 INFO L290 TraceCheckUtils]: 22: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:14:52,990 INFO L290 TraceCheckUtils]: 21: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:14:52,990 INFO L290 TraceCheckUtils]: 20: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:14:52,991 INFO L272 TraceCheckUtils]: 19: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:14:52,991 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3520#true} {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #82#return; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:14:52,991 INFO L290 TraceCheckUtils]: 17: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:14:52,991 INFO L290 TraceCheckUtils]: 16: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:14:52,991 INFO L290 TraceCheckUtils]: 15: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:14:52,991 INFO L272 TraceCheckUtils]: 14: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:14:52,992 INFO L290 TraceCheckUtils]: 13: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 10);havoc #t~post6; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:14:52,992 INFO L290 TraceCheckUtils]: 12: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:14:52,992 INFO L290 TraceCheckUtils]: 11: Hoare triple {3520#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:14:52,992 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3520#true} {3520#true} #80#return; {3520#true} is VALID [2022-04-15 09:14:52,992 INFO L290 TraceCheckUtils]: 9: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:14:52,993 INFO L290 TraceCheckUtils]: 8: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:14:52,996 INFO L290 TraceCheckUtils]: 7: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:14:52,997 INFO L272 TraceCheckUtils]: 6: Hoare triple {3520#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:14:52,997 INFO L290 TraceCheckUtils]: 5: Hoare triple {3520#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {3520#true} is VALID [2022-04-15 09:14:52,997 INFO L272 TraceCheckUtils]: 4: Hoare triple {3520#true} call #t~ret8 := main(); {3520#true} is VALID [2022-04-15 09:14:52,997 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3520#true} {3520#true} #96#return; {3520#true} is VALID [2022-04-15 09:14:52,997 INFO L290 TraceCheckUtils]: 2: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:14:52,997 INFO L290 TraceCheckUtils]: 1: Hoare triple {3520#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3520#true} is VALID [2022-04-15 09:14:52,997 INFO L272 TraceCheckUtils]: 0: Hoare triple {3520#true} call ULTIMATE.init(); {3520#true} is VALID [2022-04-15 09:14:52,997 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-04-15 09:14:52,998 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:14:52,998 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1467366661] [2022-04-15 09:14:52,998 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:14:52,998 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [615798170] [2022-04-15 09:14:52,998 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [615798170] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 09:14:52,998 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 09:14:52,998 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-04-15 09:14:52,998 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:14:52,998 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1456832220] [2022-04-15 09:14:52,998 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1456832220] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:14:52,998 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:14:52,998 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:14:52,998 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1350088744] [2022-04-15 09:14:52,998 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:14:52,999 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 46 [2022-04-15 09:14:52,999 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:14:53,000 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:14:53,017 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:53,017 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 09:14:53,018 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:53,018 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 09:14:53,018 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-15 09:14:53,018 INFO L87 Difference]: Start difference. First operand 71 states and 84 transitions. Second operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:14:53,361 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:53,362 INFO L93 Difference]: Finished difference Result 84 states and 101 transitions. [2022-04-15 09:14:53,362 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 09:14:53,362 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 46 [2022-04-15 09:14:53,362 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:14:53,362 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:14:53,363 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 59 transitions. [2022-04-15 09:14:53,363 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:14:53,363 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 59 transitions. [2022-04-15 09:14:53,364 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 59 transitions. [2022-04-15 09:14:53,407 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:53,408 INFO L225 Difference]: With dead ends: 84 [2022-04-15 09:14:53,408 INFO L226 Difference]: Without dead ends: 82 [2022-04-15 09:14:53,408 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 81 SyntacticMatches, 2 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-15 09:14:53,409 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 11 mSDsluCounter, 85 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 125 SdHoareTripleChecker+Invalid, 49 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 48 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 09:14:53,409 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 125 Invalid, 49 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 09:14:53,409 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states. [2022-04-15 09:14:53,450 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 79. [2022-04-15 09:14:53,450 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:14:53,450 INFO L82 GeneralOperation]: Start isEquivalent. First operand 82 states. Second operand has 79 states, 50 states have (on average 1.2) internal successors, (60), 53 states have internal predecessors, (60), 18 states have call successors, (18), 11 states have call predecessors, (18), 10 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-15 09:14:53,451 INFO L74 IsIncluded]: Start isIncluded. First operand 82 states. Second operand has 79 states, 50 states have (on average 1.2) internal successors, (60), 53 states have internal predecessors, (60), 18 states have call successors, (18), 11 states have call predecessors, (18), 10 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-15 09:14:53,451 INFO L87 Difference]: Start difference. First operand 82 states. Second operand has 79 states, 50 states have (on average 1.2) internal successors, (60), 53 states have internal predecessors, (60), 18 states have call successors, (18), 11 states have call predecessors, (18), 10 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-15 09:14:53,452 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:53,453 INFO L93 Difference]: Finished difference Result 82 states and 99 transitions. [2022-04-15 09:14:53,453 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 99 transitions. [2022-04-15 09:14:53,453 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:53,453 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:53,453 INFO L74 IsIncluded]: Start isIncluded. First operand has 79 states, 50 states have (on average 1.2) internal successors, (60), 53 states have internal predecessors, (60), 18 states have call successors, (18), 11 states have call predecessors, (18), 10 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) Second operand 82 states. [2022-04-15 09:14:53,453 INFO L87 Difference]: Start difference. First operand has 79 states, 50 states have (on average 1.2) internal successors, (60), 53 states have internal predecessors, (60), 18 states have call successors, (18), 11 states have call predecessors, (18), 10 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) Second operand 82 states. [2022-04-15 09:14:53,455 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:14:53,455 INFO L93 Difference]: Finished difference Result 82 states and 99 transitions. [2022-04-15 09:14:53,455 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 99 transitions. [2022-04-15 09:14:53,455 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:14:53,455 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:14:53,455 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:14:53,455 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:14:53,455 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 79 states, 50 states have (on average 1.2) internal successors, (60), 53 states have internal predecessors, (60), 18 states have call successors, (18), 11 states have call predecessors, (18), 10 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-15 09:14:53,457 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 79 states to 79 states and 94 transitions. [2022-04-15 09:14:53,457 INFO L78 Accepts]: Start accepts. Automaton has 79 states and 94 transitions. Word has length 46 [2022-04-15 09:14:53,457 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:14:53,457 INFO L478 AbstractCegarLoop]: Abstraction has 79 states and 94 transitions. [2022-04-15 09:14:53,457 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:14:53,457 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 79 states and 94 transitions. [2022-04-15 09:14:53,557 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:14:53,557 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 94 transitions. [2022-04-15 09:14:53,557 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-04-15 09:14:53,558 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:14:53,558 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:14:53,574 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-15 09:14:53,758 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:14:53,758 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:14:53,758 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:14:53,759 INFO L85 PathProgramCache]: Analyzing trace with hash 967982746, now seen corresponding path program 1 times [2022-04-15 09:14:53,759 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:14:53,759 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [578138696] [2022-04-15 09:15:00,262 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:15:00,262 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:15:00,262 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:15:00,262 INFO L85 PathProgramCache]: Analyzing trace with hash 967982746, now seen corresponding path program 2 times [2022-04-15 09:15:00,262 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:15:00,263 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1975023019] [2022-04-15 09:15:00,263 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:15:00,263 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:15:00,270 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:15:00,270 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1329698319] [2022-04-15 09:15:00,270 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:15:00,270 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:15:00,270 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:15:00,271 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:15:00,287 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-15 09:15:00,320 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:15:00,321 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:15:00,321 INFO L263 TraceCheckSpWp]: Trace formula consists of 161 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 09:15:00,331 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:15:00,332 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:15:00,563 INFO L272 TraceCheckUtils]: 0: Hoare triple {4297#true} call ULTIMATE.init(); {4297#true} is VALID [2022-04-15 09:15:00,563 INFO L290 TraceCheckUtils]: 1: Hoare triple {4297#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:00,564 INFO L290 TraceCheckUtils]: 2: Hoare triple {4305#(<= ~counter~0 0)} assume true; {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:00,564 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4305#(<= ~counter~0 0)} {4297#true} #96#return; {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:00,564 INFO L272 TraceCheckUtils]: 4: Hoare triple {4305#(<= ~counter~0 0)} call #t~ret8 := main(); {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:00,565 INFO L290 TraceCheckUtils]: 5: Hoare triple {4305#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:00,565 INFO L272 TraceCheckUtils]: 6: Hoare triple {4305#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:00,565 INFO L290 TraceCheckUtils]: 7: Hoare triple {4305#(<= ~counter~0 0)} ~cond := #in~cond; {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:00,566 INFO L290 TraceCheckUtils]: 8: Hoare triple {4305#(<= ~counter~0 0)} assume !(0 == ~cond); {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:00,566 INFO L290 TraceCheckUtils]: 9: Hoare triple {4305#(<= ~counter~0 0)} assume true; {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:00,566 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4305#(<= ~counter~0 0)} {4305#(<= ~counter~0 0)} #80#return; {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:00,567 INFO L290 TraceCheckUtils]: 11: Hoare triple {4305#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:00,567 INFO L290 TraceCheckUtils]: 12: Hoare triple {4305#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,567 INFO L290 TraceCheckUtils]: 13: Hoare triple {4339#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,568 INFO L272 TraceCheckUtils]: 14: Hoare triple {4339#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,568 INFO L290 TraceCheckUtils]: 15: Hoare triple {4339#(<= ~counter~0 1)} ~cond := #in~cond; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,568 INFO L290 TraceCheckUtils]: 16: Hoare triple {4339#(<= ~counter~0 1)} assume !(0 == ~cond); {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,569 INFO L290 TraceCheckUtils]: 17: Hoare triple {4339#(<= ~counter~0 1)} assume true; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,569 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4339#(<= ~counter~0 1)} {4339#(<= ~counter~0 1)} #82#return; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,569 INFO L272 TraceCheckUtils]: 19: Hoare triple {4339#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,570 INFO L290 TraceCheckUtils]: 20: Hoare triple {4339#(<= ~counter~0 1)} ~cond := #in~cond; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,570 INFO L290 TraceCheckUtils]: 21: Hoare triple {4339#(<= ~counter~0 1)} assume !(0 == ~cond); {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,570 INFO L290 TraceCheckUtils]: 22: Hoare triple {4339#(<= ~counter~0 1)} assume true; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,571 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4339#(<= ~counter~0 1)} {4339#(<= ~counter~0 1)} #84#return; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,571 INFO L272 TraceCheckUtils]: 24: Hoare triple {4339#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,571 INFO L290 TraceCheckUtils]: 25: Hoare triple {4339#(<= ~counter~0 1)} ~cond := #in~cond; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,572 INFO L290 TraceCheckUtils]: 26: Hoare triple {4339#(<= ~counter~0 1)} assume !(0 == ~cond); {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,572 INFO L290 TraceCheckUtils]: 27: Hoare triple {4339#(<= ~counter~0 1)} assume true; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,572 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4339#(<= ~counter~0 1)} {4339#(<= ~counter~0 1)} #86#return; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,573 INFO L290 TraceCheckUtils]: 29: Hoare triple {4339#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:00,573 INFO L290 TraceCheckUtils]: 30: Hoare triple {4339#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,573 INFO L290 TraceCheckUtils]: 31: Hoare triple {4394#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,574 INFO L272 TraceCheckUtils]: 32: Hoare triple {4394#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,574 INFO L290 TraceCheckUtils]: 33: Hoare triple {4394#(<= ~counter~0 2)} ~cond := #in~cond; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,574 INFO L290 TraceCheckUtils]: 34: Hoare triple {4394#(<= ~counter~0 2)} assume !(0 == ~cond); {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,575 INFO L290 TraceCheckUtils]: 35: Hoare triple {4394#(<= ~counter~0 2)} assume true; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,575 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4394#(<= ~counter~0 2)} {4394#(<= ~counter~0 2)} #82#return; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,575 INFO L272 TraceCheckUtils]: 37: Hoare triple {4394#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,576 INFO L290 TraceCheckUtils]: 38: Hoare triple {4394#(<= ~counter~0 2)} ~cond := #in~cond; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,576 INFO L290 TraceCheckUtils]: 39: Hoare triple {4394#(<= ~counter~0 2)} assume !(0 == ~cond); {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,576 INFO L290 TraceCheckUtils]: 40: Hoare triple {4394#(<= ~counter~0 2)} assume true; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,577 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4394#(<= ~counter~0 2)} {4394#(<= ~counter~0 2)} #84#return; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,577 INFO L272 TraceCheckUtils]: 42: Hoare triple {4394#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,577 INFO L290 TraceCheckUtils]: 43: Hoare triple {4394#(<= ~counter~0 2)} ~cond := #in~cond; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,578 INFO L290 TraceCheckUtils]: 44: Hoare triple {4394#(<= ~counter~0 2)} assume !(0 == ~cond); {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,578 INFO L290 TraceCheckUtils]: 45: Hoare triple {4394#(<= ~counter~0 2)} assume true; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,578 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {4394#(<= ~counter~0 2)} {4394#(<= ~counter~0 2)} #86#return; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,579 INFO L290 TraceCheckUtils]: 47: Hoare triple {4394#(<= ~counter~0 2)} assume !(~r~0 >= ~d~0); {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:00,579 INFO L290 TraceCheckUtils]: 48: Hoare triple {4394#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4449#(<= |main_#t~post7| 2)} is VALID [2022-04-15 09:15:00,579 INFO L290 TraceCheckUtils]: 49: Hoare triple {4449#(<= |main_#t~post7| 2)} assume !(#t~post7 < 10);havoc #t~post7; {4298#false} is VALID [2022-04-15 09:15:00,579 INFO L272 TraceCheckUtils]: 50: Hoare triple {4298#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {4298#false} is VALID [2022-04-15 09:15:00,579 INFO L290 TraceCheckUtils]: 51: Hoare triple {4298#false} ~cond := #in~cond; {4298#false} is VALID [2022-04-15 09:15:00,580 INFO L290 TraceCheckUtils]: 52: Hoare triple {4298#false} assume !(0 == ~cond); {4298#false} is VALID [2022-04-15 09:15:00,580 INFO L290 TraceCheckUtils]: 53: Hoare triple {4298#false} assume true; {4298#false} is VALID [2022-04-15 09:15:00,580 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {4298#false} {4298#false} #92#return; {4298#false} is VALID [2022-04-15 09:15:00,580 INFO L272 TraceCheckUtils]: 55: Hoare triple {4298#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {4298#false} is VALID [2022-04-15 09:15:00,580 INFO L290 TraceCheckUtils]: 56: Hoare triple {4298#false} ~cond := #in~cond; {4298#false} is VALID [2022-04-15 09:15:00,580 INFO L290 TraceCheckUtils]: 57: Hoare triple {4298#false} assume 0 == ~cond; {4298#false} is VALID [2022-04-15 09:15:00,580 INFO L290 TraceCheckUtils]: 58: Hoare triple {4298#false} assume !false; {4298#false} is VALID [2022-04-15 09:15:00,580 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 36 proven. 42 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2022-04-15 09:15:00,580 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:15:00,829 INFO L290 TraceCheckUtils]: 58: Hoare triple {4298#false} assume !false; {4298#false} is VALID [2022-04-15 09:15:00,829 INFO L290 TraceCheckUtils]: 57: Hoare triple {4298#false} assume 0 == ~cond; {4298#false} is VALID [2022-04-15 09:15:00,829 INFO L290 TraceCheckUtils]: 56: Hoare triple {4298#false} ~cond := #in~cond; {4298#false} is VALID [2022-04-15 09:15:00,829 INFO L272 TraceCheckUtils]: 55: Hoare triple {4298#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {4298#false} is VALID [2022-04-15 09:15:00,829 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {4297#true} {4298#false} #92#return; {4298#false} is VALID [2022-04-15 09:15:00,829 INFO L290 TraceCheckUtils]: 53: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-15 09:15:00,829 INFO L290 TraceCheckUtils]: 52: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-15 09:15:00,830 INFO L290 TraceCheckUtils]: 51: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-15 09:15:00,830 INFO L272 TraceCheckUtils]: 50: Hoare triple {4298#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {4297#true} is VALID [2022-04-15 09:15:00,830 INFO L290 TraceCheckUtils]: 49: Hoare triple {4507#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {4298#false} is VALID [2022-04-15 09:15:00,830 INFO L290 TraceCheckUtils]: 48: Hoare triple {4511#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4507#(< |main_#t~post7| 10)} is VALID [2022-04-15 09:15:00,830 INFO L290 TraceCheckUtils]: 47: Hoare triple {4511#(< ~counter~0 10)} assume !(~r~0 >= ~d~0); {4511#(< ~counter~0 10)} is VALID [2022-04-15 09:15:00,831 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {4297#true} {4511#(< ~counter~0 10)} #86#return; {4511#(< ~counter~0 10)} is VALID [2022-04-15 09:15:00,831 INFO L290 TraceCheckUtils]: 45: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-15 09:15:00,831 INFO L290 TraceCheckUtils]: 44: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-15 09:15:00,831 INFO L290 TraceCheckUtils]: 43: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-15 09:15:00,831 INFO L272 TraceCheckUtils]: 42: Hoare triple {4511#(< ~counter~0 10)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {4297#true} is VALID [2022-04-15 09:15:00,832 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4297#true} {4511#(< ~counter~0 10)} #84#return; {4511#(< ~counter~0 10)} is VALID [2022-04-15 09:15:00,832 INFO L290 TraceCheckUtils]: 40: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-15 09:15:00,832 INFO L290 TraceCheckUtils]: 39: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-15 09:15:00,832 INFO L290 TraceCheckUtils]: 38: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-15 09:15:00,832 INFO L272 TraceCheckUtils]: 37: Hoare triple {4511#(< ~counter~0 10)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {4297#true} is VALID [2022-04-15 09:15:00,832 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4297#true} {4511#(< ~counter~0 10)} #82#return; {4511#(< ~counter~0 10)} is VALID [2022-04-15 09:15:00,832 INFO L290 TraceCheckUtils]: 35: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-15 09:15:00,833 INFO L290 TraceCheckUtils]: 34: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-15 09:15:00,833 INFO L290 TraceCheckUtils]: 33: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-15 09:15:00,833 INFO L272 TraceCheckUtils]: 32: Hoare triple {4511#(< ~counter~0 10)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {4297#true} is VALID [2022-04-15 09:15:00,833 INFO L290 TraceCheckUtils]: 31: Hoare triple {4511#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {4511#(< ~counter~0 10)} is VALID [2022-04-15 09:15:00,833 INFO L290 TraceCheckUtils]: 30: Hoare triple {4566#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4511#(< ~counter~0 10)} is VALID [2022-04-15 09:15:00,834 INFO L290 TraceCheckUtils]: 29: Hoare triple {4566#(< ~counter~0 9)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {4566#(< ~counter~0 9)} is VALID [2022-04-15 09:15:00,834 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4297#true} {4566#(< ~counter~0 9)} #86#return; {4566#(< ~counter~0 9)} is VALID [2022-04-15 09:15:00,834 INFO L290 TraceCheckUtils]: 27: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-15 09:15:00,834 INFO L290 TraceCheckUtils]: 26: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-15 09:15:00,834 INFO L290 TraceCheckUtils]: 25: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-15 09:15:00,834 INFO L272 TraceCheckUtils]: 24: Hoare triple {4566#(< ~counter~0 9)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {4297#true} is VALID [2022-04-15 09:15:00,835 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4297#true} {4566#(< ~counter~0 9)} #84#return; {4566#(< ~counter~0 9)} is VALID [2022-04-15 09:15:00,835 INFO L290 TraceCheckUtils]: 22: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-15 09:15:00,835 INFO L290 TraceCheckUtils]: 21: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-15 09:15:00,835 INFO L290 TraceCheckUtils]: 20: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-15 09:15:00,835 INFO L272 TraceCheckUtils]: 19: Hoare triple {4566#(< ~counter~0 9)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {4297#true} is VALID [2022-04-15 09:15:00,835 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4297#true} {4566#(< ~counter~0 9)} #82#return; {4566#(< ~counter~0 9)} is VALID [2022-04-15 09:15:00,835 INFO L290 TraceCheckUtils]: 17: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-15 09:15:00,836 INFO L290 TraceCheckUtils]: 16: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-15 09:15:00,836 INFO L290 TraceCheckUtils]: 15: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-15 09:15:00,836 INFO L272 TraceCheckUtils]: 14: Hoare triple {4566#(< ~counter~0 9)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {4297#true} is VALID [2022-04-15 09:15:00,836 INFO L290 TraceCheckUtils]: 13: Hoare triple {4566#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {4566#(< ~counter~0 9)} is VALID [2022-04-15 09:15:00,836 INFO L290 TraceCheckUtils]: 12: Hoare triple {4621#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4566#(< ~counter~0 9)} is VALID [2022-04-15 09:15:00,837 INFO L290 TraceCheckUtils]: 11: Hoare triple {4621#(< ~counter~0 8)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {4621#(< ~counter~0 8)} is VALID [2022-04-15 09:15:00,837 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4297#true} {4621#(< ~counter~0 8)} #80#return; {4621#(< ~counter~0 8)} is VALID [2022-04-15 09:15:00,837 INFO L290 TraceCheckUtils]: 9: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-15 09:15:00,837 INFO L290 TraceCheckUtils]: 8: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-15 09:15:00,837 INFO L290 TraceCheckUtils]: 7: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-15 09:15:00,837 INFO L272 TraceCheckUtils]: 6: Hoare triple {4621#(< ~counter~0 8)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {4297#true} is VALID [2022-04-15 09:15:00,837 INFO L290 TraceCheckUtils]: 5: Hoare triple {4621#(< ~counter~0 8)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {4621#(< ~counter~0 8)} is VALID [2022-04-15 09:15:00,838 INFO L272 TraceCheckUtils]: 4: Hoare triple {4621#(< ~counter~0 8)} call #t~ret8 := main(); {4621#(< ~counter~0 8)} is VALID [2022-04-15 09:15:00,838 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4621#(< ~counter~0 8)} {4297#true} #96#return; {4621#(< ~counter~0 8)} is VALID [2022-04-15 09:15:00,838 INFO L290 TraceCheckUtils]: 2: Hoare triple {4621#(< ~counter~0 8)} assume true; {4621#(< ~counter~0 8)} is VALID [2022-04-15 09:15:00,839 INFO L290 TraceCheckUtils]: 1: Hoare triple {4297#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4621#(< ~counter~0 8)} is VALID [2022-04-15 09:15:00,839 INFO L272 TraceCheckUtils]: 0: Hoare triple {4297#true} call ULTIMATE.init(); {4297#true} is VALID [2022-04-15 09:15:00,839 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 14 proven. 6 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2022-04-15 09:15:00,839 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:15:00,839 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1975023019] [2022-04-15 09:15:00,839 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:15:00,839 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1329698319] [2022-04-15 09:15:00,839 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1329698319] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:15:00,840 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:15:00,840 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-15 09:15:00,840 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:15:00,840 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [578138696] [2022-04-15 09:15:00,840 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [578138696] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:15:00,840 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:15:00,840 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 09:15:00,840 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [26319644] [2022-04-15 09:15:00,840 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:15:00,840 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) Word has length 59 [2022-04-15 09:15:00,841 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:15:00,841 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:15:00,892 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:15:00,892 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 09:15:00,892 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:15:00,892 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 09:15:00,892 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-15 09:15:00,892 INFO L87 Difference]: Start difference. First operand 79 states and 94 transitions. Second operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:15:01,077 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:15:01,077 INFO L93 Difference]: Finished difference Result 110 states and 126 transitions. [2022-04-15 09:15:01,078 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 09:15:01,078 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) Word has length 59 [2022-04-15 09:15:01,078 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:15:01,078 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:15:01,079 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 79 transitions. [2022-04-15 09:15:01,079 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:15:01,080 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 79 transitions. [2022-04-15 09:15:01,080 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 79 transitions. [2022-04-15 09:15:01,130 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:15:01,131 INFO L225 Difference]: With dead ends: 110 [2022-04-15 09:15:01,131 INFO L226 Difference]: Without dead ends: 98 [2022-04-15 09:15:01,132 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 117 GetRequests, 109 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-15 09:15:01,132 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 14 mSDsluCounter, 84 mSDsCounter, 0 mSdLazyCounter, 27 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 129 SdHoareTripleChecker+Invalid, 37 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 27 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:15:01,132 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 129 Invalid, 37 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 27 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:15:01,132 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-15 09:15:01,188 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 97. [2022-04-15 09:15:01,188 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:15:01,188 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 97 states, 62 states have (on average 1.1774193548387097) internal successors, (73), 65 states have internal predecessors, (73), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 09:15:01,188 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 97 states, 62 states have (on average 1.1774193548387097) internal successors, (73), 65 states have internal predecessors, (73), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 09:15:01,188 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 97 states, 62 states have (on average 1.1774193548387097) internal successors, (73), 65 states have internal predecessors, (73), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 09:15:01,191 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:15:01,191 INFO L93 Difference]: Finished difference Result 98 states and 114 transitions. [2022-04-15 09:15:01,191 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 114 transitions. [2022-04-15 09:15:01,191 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:15:01,191 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:15:01,191 INFO L74 IsIncluded]: Start isIncluded. First operand has 97 states, 62 states have (on average 1.1774193548387097) internal successors, (73), 65 states have internal predecessors, (73), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) Second operand 98 states. [2022-04-15 09:15:01,191 INFO L87 Difference]: Start difference. First operand has 97 states, 62 states have (on average 1.1774193548387097) internal successors, (73), 65 states have internal predecessors, (73), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) Second operand 98 states. [2022-04-15 09:15:01,193 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:15:01,193 INFO L93 Difference]: Finished difference Result 98 states and 114 transitions. [2022-04-15 09:15:01,193 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 114 transitions. [2022-04-15 09:15:01,193 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:15:01,193 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:15:01,193 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:15:01,193 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:15:01,193 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 97 states, 62 states have (on average 1.1774193548387097) internal successors, (73), 65 states have internal predecessors, (73), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 09:15:01,195 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 97 states to 97 states and 113 transitions. [2022-04-15 09:15:01,195 INFO L78 Accepts]: Start accepts. Automaton has 97 states and 113 transitions. Word has length 59 [2022-04-15 09:15:01,195 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:15:01,195 INFO L478 AbstractCegarLoop]: Abstraction has 97 states and 113 transitions. [2022-04-15 09:15:01,195 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:15:01,195 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 97 states and 113 transitions. [2022-04-15 09:15:01,298 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 113 edges. 113 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:15:01,298 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 113 transitions. [2022-04-15 09:15:01,299 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-15 09:15:01,299 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:15:01,299 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:15:01,315 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-15 09:15:01,499 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:15:01,499 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:15:01,500 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:15:01,500 INFO L85 PathProgramCache]: Analyzing trace with hash 940283669, now seen corresponding path program 3 times [2022-04-15 09:15:01,500 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:15:01,500 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1660981289] [2022-04-15 09:15:09,450 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:15:09,451 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:15:09,451 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:15:09,451 INFO L85 PathProgramCache]: Analyzing trace with hash 940283669, now seen corresponding path program 4 times [2022-04-15 09:15:09,451 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:15:09,451 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1511340657] [2022-04-15 09:15:09,451 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:15:09,451 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:15:09,463 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:15:09,463 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [930769507] [2022-04-15 09:15:09,463 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 09:15:09,465 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:15:09,465 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:15:09,466 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:15:09,473 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-15 09:15:09,519 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 09:15:09,519 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:15:09,520 INFO L263 TraceCheckSpWp]: Trace formula consists of 170 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 09:15:09,529 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:15:09,530 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:15:09,759 INFO L272 TraceCheckUtils]: 0: Hoare triple {5270#true} call ULTIMATE.init(); {5270#true} is VALID [2022-04-15 09:15:09,760 INFO L290 TraceCheckUtils]: 1: Hoare triple {5270#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5278#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:09,762 INFO L290 TraceCheckUtils]: 2: Hoare triple {5278#(<= ~counter~0 0)} assume true; {5278#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:09,762 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5278#(<= ~counter~0 0)} {5270#true} #96#return; {5278#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:09,764 INFO L272 TraceCheckUtils]: 4: Hoare triple {5278#(<= ~counter~0 0)} call #t~ret8 := main(); {5278#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:09,764 INFO L290 TraceCheckUtils]: 5: Hoare triple {5278#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {5278#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:09,764 INFO L272 TraceCheckUtils]: 6: Hoare triple {5278#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {5278#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:09,765 INFO L290 TraceCheckUtils]: 7: Hoare triple {5278#(<= ~counter~0 0)} ~cond := #in~cond; {5278#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:09,765 INFO L290 TraceCheckUtils]: 8: Hoare triple {5278#(<= ~counter~0 0)} assume !(0 == ~cond); {5278#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:09,765 INFO L290 TraceCheckUtils]: 9: Hoare triple {5278#(<= ~counter~0 0)} assume true; {5278#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:09,765 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5278#(<= ~counter~0 0)} {5278#(<= ~counter~0 0)} #80#return; {5278#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:09,766 INFO L290 TraceCheckUtils]: 11: Hoare triple {5278#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {5278#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:09,766 INFO L290 TraceCheckUtils]: 12: Hoare triple {5278#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,766 INFO L290 TraceCheckUtils]: 13: Hoare triple {5312#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,767 INFO L272 TraceCheckUtils]: 14: Hoare triple {5312#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,768 INFO L290 TraceCheckUtils]: 15: Hoare triple {5312#(<= ~counter~0 1)} ~cond := #in~cond; {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,768 INFO L290 TraceCheckUtils]: 16: Hoare triple {5312#(<= ~counter~0 1)} assume !(0 == ~cond); {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,768 INFO L290 TraceCheckUtils]: 17: Hoare triple {5312#(<= ~counter~0 1)} assume true; {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,769 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5312#(<= ~counter~0 1)} {5312#(<= ~counter~0 1)} #82#return; {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,769 INFO L272 TraceCheckUtils]: 19: Hoare triple {5312#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,769 INFO L290 TraceCheckUtils]: 20: Hoare triple {5312#(<= ~counter~0 1)} ~cond := #in~cond; {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,769 INFO L290 TraceCheckUtils]: 21: Hoare triple {5312#(<= ~counter~0 1)} assume !(0 == ~cond); {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,770 INFO L290 TraceCheckUtils]: 22: Hoare triple {5312#(<= ~counter~0 1)} assume true; {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,770 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5312#(<= ~counter~0 1)} {5312#(<= ~counter~0 1)} #84#return; {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,771 INFO L272 TraceCheckUtils]: 24: Hoare triple {5312#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,771 INFO L290 TraceCheckUtils]: 25: Hoare triple {5312#(<= ~counter~0 1)} ~cond := #in~cond; {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,771 INFO L290 TraceCheckUtils]: 26: Hoare triple {5312#(<= ~counter~0 1)} assume !(0 == ~cond); {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,771 INFO L290 TraceCheckUtils]: 27: Hoare triple {5312#(<= ~counter~0 1)} assume true; {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,772 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5312#(<= ~counter~0 1)} {5312#(<= ~counter~0 1)} #86#return; {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,772 INFO L290 TraceCheckUtils]: 29: Hoare triple {5312#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {5312#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:09,772 INFO L290 TraceCheckUtils]: 30: Hoare triple {5312#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,773 INFO L290 TraceCheckUtils]: 31: Hoare triple {5367#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,773 INFO L272 TraceCheckUtils]: 32: Hoare triple {5367#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,773 INFO L290 TraceCheckUtils]: 33: Hoare triple {5367#(<= ~counter~0 2)} ~cond := #in~cond; {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,774 INFO L290 TraceCheckUtils]: 34: Hoare triple {5367#(<= ~counter~0 2)} assume !(0 == ~cond); {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,774 INFO L290 TraceCheckUtils]: 35: Hoare triple {5367#(<= ~counter~0 2)} assume true; {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,774 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5367#(<= ~counter~0 2)} {5367#(<= ~counter~0 2)} #82#return; {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,775 INFO L272 TraceCheckUtils]: 37: Hoare triple {5367#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,775 INFO L290 TraceCheckUtils]: 38: Hoare triple {5367#(<= ~counter~0 2)} ~cond := #in~cond; {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,775 INFO L290 TraceCheckUtils]: 39: Hoare triple {5367#(<= ~counter~0 2)} assume !(0 == ~cond); {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,775 INFO L290 TraceCheckUtils]: 40: Hoare triple {5367#(<= ~counter~0 2)} assume true; {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,776 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5367#(<= ~counter~0 2)} {5367#(<= ~counter~0 2)} #84#return; {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,776 INFO L272 TraceCheckUtils]: 42: Hoare triple {5367#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,776 INFO L290 TraceCheckUtils]: 43: Hoare triple {5367#(<= ~counter~0 2)} ~cond := #in~cond; {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,777 INFO L290 TraceCheckUtils]: 44: Hoare triple {5367#(<= ~counter~0 2)} assume !(0 == ~cond); {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,777 INFO L290 TraceCheckUtils]: 45: Hoare triple {5367#(<= ~counter~0 2)} assume true; {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,777 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {5367#(<= ~counter~0 2)} {5367#(<= ~counter~0 2)} #86#return; {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,778 INFO L290 TraceCheckUtils]: 47: Hoare triple {5367#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {5367#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:09,778 INFO L290 TraceCheckUtils]: 48: Hoare triple {5367#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5422#(<= |main_#t~post6| 2)} is VALID [2022-04-15 09:15:09,778 INFO L290 TraceCheckUtils]: 49: Hoare triple {5422#(<= |main_#t~post6| 2)} assume !(#t~post6 < 10);havoc #t~post6; {5271#false} is VALID [2022-04-15 09:15:09,778 INFO L290 TraceCheckUtils]: 50: Hoare triple {5271#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5271#false} is VALID [2022-04-15 09:15:09,778 INFO L290 TraceCheckUtils]: 51: Hoare triple {5271#false} assume !(#t~post7 < 10);havoc #t~post7; {5271#false} is VALID [2022-04-15 09:15:09,778 INFO L272 TraceCheckUtils]: 52: Hoare triple {5271#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {5271#false} is VALID [2022-04-15 09:15:09,779 INFO L290 TraceCheckUtils]: 53: Hoare triple {5271#false} ~cond := #in~cond; {5271#false} is VALID [2022-04-15 09:15:09,779 INFO L290 TraceCheckUtils]: 54: Hoare triple {5271#false} assume !(0 == ~cond); {5271#false} is VALID [2022-04-15 09:15:09,779 INFO L290 TraceCheckUtils]: 55: Hoare triple {5271#false} assume true; {5271#false} is VALID [2022-04-15 09:15:09,779 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {5271#false} {5271#false} #92#return; {5271#false} is VALID [2022-04-15 09:15:09,779 INFO L272 TraceCheckUtils]: 57: Hoare triple {5271#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {5271#false} is VALID [2022-04-15 09:15:09,779 INFO L290 TraceCheckUtils]: 58: Hoare triple {5271#false} ~cond := #in~cond; {5271#false} is VALID [2022-04-15 09:15:09,779 INFO L290 TraceCheckUtils]: 59: Hoare triple {5271#false} assume 0 == ~cond; {5271#false} is VALID [2022-04-15 09:15:09,779 INFO L290 TraceCheckUtils]: 60: Hoare triple {5271#false} assume !false; {5271#false} is VALID [2022-04-15 09:15:09,779 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 36 proven. 46 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2022-04-15 09:15:09,779 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:15:09,999 INFO L290 TraceCheckUtils]: 60: Hoare triple {5271#false} assume !false; {5271#false} is VALID [2022-04-15 09:15:09,999 INFO L290 TraceCheckUtils]: 59: Hoare triple {5271#false} assume 0 == ~cond; {5271#false} is VALID [2022-04-15 09:15:09,999 INFO L290 TraceCheckUtils]: 58: Hoare triple {5271#false} ~cond := #in~cond; {5271#false} is VALID [2022-04-15 09:15:09,999 INFO L272 TraceCheckUtils]: 57: Hoare triple {5271#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {5271#false} is VALID [2022-04-15 09:15:09,999 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {5270#true} {5271#false} #92#return; {5271#false} is VALID [2022-04-15 09:15:09,999 INFO L290 TraceCheckUtils]: 55: Hoare triple {5270#true} assume true; {5270#true} is VALID [2022-04-15 09:15:09,999 INFO L290 TraceCheckUtils]: 54: Hoare triple {5270#true} assume !(0 == ~cond); {5270#true} is VALID [2022-04-15 09:15:09,999 INFO L290 TraceCheckUtils]: 53: Hoare triple {5270#true} ~cond := #in~cond; {5270#true} is VALID [2022-04-15 09:15:09,999 INFO L272 TraceCheckUtils]: 52: Hoare triple {5271#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {5270#true} is VALID [2022-04-15 09:15:09,999 INFO L290 TraceCheckUtils]: 51: Hoare triple {5271#false} assume !(#t~post7 < 10);havoc #t~post7; {5271#false} is VALID [2022-04-15 09:15:09,999 INFO L290 TraceCheckUtils]: 50: Hoare triple {5271#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5271#false} is VALID [2022-04-15 09:15:10,000 INFO L290 TraceCheckUtils]: 49: Hoare triple {5492#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {5271#false} is VALID [2022-04-15 09:15:10,000 INFO L290 TraceCheckUtils]: 48: Hoare triple {5496#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5492#(< |main_#t~post6| 10)} is VALID [2022-04-15 09:15:10,001 INFO L290 TraceCheckUtils]: 47: Hoare triple {5496#(< ~counter~0 10)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {5496#(< ~counter~0 10)} is VALID [2022-04-15 09:15:10,002 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {5270#true} {5496#(< ~counter~0 10)} #86#return; {5496#(< ~counter~0 10)} is VALID [2022-04-15 09:15:10,002 INFO L290 TraceCheckUtils]: 45: Hoare triple {5270#true} assume true; {5270#true} is VALID [2022-04-15 09:15:10,002 INFO L290 TraceCheckUtils]: 44: Hoare triple {5270#true} assume !(0 == ~cond); {5270#true} is VALID [2022-04-15 09:15:10,002 INFO L290 TraceCheckUtils]: 43: Hoare triple {5270#true} ~cond := #in~cond; {5270#true} is VALID [2022-04-15 09:15:10,002 INFO L272 TraceCheckUtils]: 42: Hoare triple {5496#(< ~counter~0 10)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5270#true} is VALID [2022-04-15 09:15:10,002 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5270#true} {5496#(< ~counter~0 10)} #84#return; {5496#(< ~counter~0 10)} is VALID [2022-04-15 09:15:10,002 INFO L290 TraceCheckUtils]: 40: Hoare triple {5270#true} assume true; {5270#true} is VALID [2022-04-15 09:15:10,002 INFO L290 TraceCheckUtils]: 39: Hoare triple {5270#true} assume !(0 == ~cond); {5270#true} is VALID [2022-04-15 09:15:10,002 INFO L290 TraceCheckUtils]: 38: Hoare triple {5270#true} ~cond := #in~cond; {5270#true} is VALID [2022-04-15 09:15:10,002 INFO L272 TraceCheckUtils]: 37: Hoare triple {5496#(< ~counter~0 10)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {5270#true} is VALID [2022-04-15 09:15:10,003 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5270#true} {5496#(< ~counter~0 10)} #82#return; {5496#(< ~counter~0 10)} is VALID [2022-04-15 09:15:10,003 INFO L290 TraceCheckUtils]: 35: Hoare triple {5270#true} assume true; {5270#true} is VALID [2022-04-15 09:15:10,003 INFO L290 TraceCheckUtils]: 34: Hoare triple {5270#true} assume !(0 == ~cond); {5270#true} is VALID [2022-04-15 09:15:10,003 INFO L290 TraceCheckUtils]: 33: Hoare triple {5270#true} ~cond := #in~cond; {5270#true} is VALID [2022-04-15 09:15:10,003 INFO L272 TraceCheckUtils]: 32: Hoare triple {5496#(< ~counter~0 10)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {5270#true} is VALID [2022-04-15 09:15:10,003 INFO L290 TraceCheckUtils]: 31: Hoare triple {5496#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {5496#(< ~counter~0 10)} is VALID [2022-04-15 09:15:10,004 INFO L290 TraceCheckUtils]: 30: Hoare triple {5551#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5496#(< ~counter~0 10)} is VALID [2022-04-15 09:15:10,004 INFO L290 TraceCheckUtils]: 29: Hoare triple {5551#(< ~counter~0 9)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {5551#(< ~counter~0 9)} is VALID [2022-04-15 09:15:10,004 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5270#true} {5551#(< ~counter~0 9)} #86#return; {5551#(< ~counter~0 9)} is VALID [2022-04-15 09:15:10,004 INFO L290 TraceCheckUtils]: 27: Hoare triple {5270#true} assume true; {5270#true} is VALID [2022-04-15 09:15:10,005 INFO L290 TraceCheckUtils]: 26: Hoare triple {5270#true} assume !(0 == ~cond); {5270#true} is VALID [2022-04-15 09:15:10,005 INFO L290 TraceCheckUtils]: 25: Hoare triple {5270#true} ~cond := #in~cond; {5270#true} is VALID [2022-04-15 09:15:10,005 INFO L272 TraceCheckUtils]: 24: Hoare triple {5551#(< ~counter~0 9)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5270#true} is VALID [2022-04-15 09:15:10,005 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5270#true} {5551#(< ~counter~0 9)} #84#return; {5551#(< ~counter~0 9)} is VALID [2022-04-15 09:15:10,005 INFO L290 TraceCheckUtils]: 22: Hoare triple {5270#true} assume true; {5270#true} is VALID [2022-04-15 09:15:10,005 INFO L290 TraceCheckUtils]: 21: Hoare triple {5270#true} assume !(0 == ~cond); {5270#true} is VALID [2022-04-15 09:15:10,005 INFO L290 TraceCheckUtils]: 20: Hoare triple {5270#true} ~cond := #in~cond; {5270#true} is VALID [2022-04-15 09:15:10,005 INFO L272 TraceCheckUtils]: 19: Hoare triple {5551#(< ~counter~0 9)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {5270#true} is VALID [2022-04-15 09:15:10,006 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5270#true} {5551#(< ~counter~0 9)} #82#return; {5551#(< ~counter~0 9)} is VALID [2022-04-15 09:15:10,006 INFO L290 TraceCheckUtils]: 17: Hoare triple {5270#true} assume true; {5270#true} is VALID [2022-04-15 09:15:10,006 INFO L290 TraceCheckUtils]: 16: Hoare triple {5270#true} assume !(0 == ~cond); {5270#true} is VALID [2022-04-15 09:15:10,006 INFO L290 TraceCheckUtils]: 15: Hoare triple {5270#true} ~cond := #in~cond; {5270#true} is VALID [2022-04-15 09:15:10,006 INFO L272 TraceCheckUtils]: 14: Hoare triple {5551#(< ~counter~0 9)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {5270#true} is VALID [2022-04-15 09:15:10,006 INFO L290 TraceCheckUtils]: 13: Hoare triple {5551#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {5551#(< ~counter~0 9)} is VALID [2022-04-15 09:15:10,007 INFO L290 TraceCheckUtils]: 12: Hoare triple {5606#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5551#(< ~counter~0 9)} is VALID [2022-04-15 09:15:10,007 INFO L290 TraceCheckUtils]: 11: Hoare triple {5606#(< ~counter~0 8)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {5606#(< ~counter~0 8)} is VALID [2022-04-15 09:15:10,007 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5270#true} {5606#(< ~counter~0 8)} #80#return; {5606#(< ~counter~0 8)} is VALID [2022-04-15 09:15:10,007 INFO L290 TraceCheckUtils]: 9: Hoare triple {5270#true} assume true; {5270#true} is VALID [2022-04-15 09:15:10,007 INFO L290 TraceCheckUtils]: 8: Hoare triple {5270#true} assume !(0 == ~cond); {5270#true} is VALID [2022-04-15 09:15:10,007 INFO L290 TraceCheckUtils]: 7: Hoare triple {5270#true} ~cond := #in~cond; {5270#true} is VALID [2022-04-15 09:15:10,007 INFO L272 TraceCheckUtils]: 6: Hoare triple {5606#(< ~counter~0 8)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {5270#true} is VALID [2022-04-15 09:15:10,008 INFO L290 TraceCheckUtils]: 5: Hoare triple {5606#(< ~counter~0 8)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {5606#(< ~counter~0 8)} is VALID [2022-04-15 09:15:10,008 INFO L272 TraceCheckUtils]: 4: Hoare triple {5606#(< ~counter~0 8)} call #t~ret8 := main(); {5606#(< ~counter~0 8)} is VALID [2022-04-15 09:15:10,008 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5606#(< ~counter~0 8)} {5270#true} #96#return; {5606#(< ~counter~0 8)} is VALID [2022-04-15 09:15:10,008 INFO L290 TraceCheckUtils]: 2: Hoare triple {5606#(< ~counter~0 8)} assume true; {5606#(< ~counter~0 8)} is VALID [2022-04-15 09:15:10,009 INFO L290 TraceCheckUtils]: 1: Hoare triple {5270#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5606#(< ~counter~0 8)} is VALID [2022-04-15 09:15:10,009 INFO L272 TraceCheckUtils]: 0: Hoare triple {5270#true} call ULTIMATE.init(); {5270#true} is VALID [2022-04-15 09:15:10,009 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 14 proven. 10 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2022-04-15 09:15:10,009 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:15:10,009 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1511340657] [2022-04-15 09:15:10,009 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:15:10,009 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [930769507] [2022-04-15 09:15:10,009 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [930769507] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:15:10,010 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:15:10,010 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-15 09:15:10,010 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:15:10,010 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1660981289] [2022-04-15 09:15:10,010 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1660981289] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:15:10,010 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:15:10,010 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 09:15:10,010 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1301185101] [2022-04-15 09:15:10,010 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:15:10,010 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) Word has length 61 [2022-04-15 09:15:10,011 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:15:10,011 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:15:10,042 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:15:10,042 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 09:15:10,042 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:15:10,042 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 09:15:10,042 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-15 09:15:10,043 INFO L87 Difference]: Start difference. First operand 97 states and 113 transitions. Second operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:15:10,218 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:15:10,219 INFO L93 Difference]: Finished difference Result 132 states and 161 transitions. [2022-04-15 09:15:10,219 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 09:15:10,219 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) Word has length 61 [2022-04-15 09:15:10,219 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:15:10,219 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:15:10,220 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 90 transitions. [2022-04-15 09:15:10,220 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:15:10,221 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 90 transitions. [2022-04-15 09:15:10,221 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 90 transitions. [2022-04-15 09:15:10,279 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:15:10,280 INFO L225 Difference]: With dead ends: 132 [2022-04-15 09:15:10,280 INFO L226 Difference]: Without dead ends: 99 [2022-04-15 09:15:10,280 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 113 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=51, Invalid=81, Unknown=0, NotChecked=0, Total=132 [2022-04-15 09:15:10,281 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 7 mSDsluCounter, 101 mSDsCounter, 0 mSdLazyCounter, 27 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 146 SdHoareTripleChecker+Invalid, 32 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 27 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:15:10,281 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 146 Invalid, 32 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 27 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:15:10,281 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 99 states. [2022-04-15 09:15:10,339 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 99 to 99. [2022-04-15 09:15:10,339 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:15:10,340 INFO L82 GeneralOperation]: Start isEquivalent. First operand 99 states. Second operand has 99 states, 64 states have (on average 1.171875) internal successors, (75), 67 states have internal predecessors, (75), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 09:15:10,340 INFO L74 IsIncluded]: Start isIncluded. First operand 99 states. Second operand has 99 states, 64 states have (on average 1.171875) internal successors, (75), 67 states have internal predecessors, (75), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 09:15:10,340 INFO L87 Difference]: Start difference. First operand 99 states. Second operand has 99 states, 64 states have (on average 1.171875) internal successors, (75), 67 states have internal predecessors, (75), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 09:15:10,342 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:15:10,342 INFO L93 Difference]: Finished difference Result 99 states and 115 transitions. [2022-04-15 09:15:10,342 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 115 transitions. [2022-04-15 09:15:10,342 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:15:10,342 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:15:10,342 INFO L74 IsIncluded]: Start isIncluded. First operand has 99 states, 64 states have (on average 1.171875) internal successors, (75), 67 states have internal predecessors, (75), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) Second operand 99 states. [2022-04-15 09:15:10,342 INFO L87 Difference]: Start difference. First operand has 99 states, 64 states have (on average 1.171875) internal successors, (75), 67 states have internal predecessors, (75), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) Second operand 99 states. [2022-04-15 09:15:10,344 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:15:10,344 INFO L93 Difference]: Finished difference Result 99 states and 115 transitions. [2022-04-15 09:15:10,344 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 115 transitions. [2022-04-15 09:15:10,344 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:15:10,344 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:15:10,344 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:15:10,344 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:15:10,344 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 99 states, 64 states have (on average 1.171875) internal successors, (75), 67 states have internal predecessors, (75), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 09:15:10,346 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 99 states to 99 states and 115 transitions. [2022-04-15 09:15:10,346 INFO L78 Accepts]: Start accepts. Automaton has 99 states and 115 transitions. Word has length 61 [2022-04-15 09:15:10,346 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:15:10,346 INFO L478 AbstractCegarLoop]: Abstraction has 99 states and 115 transitions. [2022-04-15 09:15:10,346 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:15:10,346 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 99 states and 115 transitions. [2022-04-15 09:15:10,451 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:15:10,451 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 115 transitions. [2022-04-15 09:15:10,452 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 69 [2022-04-15 09:15:10,452 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:15:10,452 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:15:10,468 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-15 09:15:10,652 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-15 09:15:10,652 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:15:10,653 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:15:10,653 INFO L85 PathProgramCache]: Analyzing trace with hash 1140868055, now seen corresponding path program 1 times [2022-04-15 09:15:10,653 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:15:10,653 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [273310339] [2022-04-15 09:15:18,250 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:15:18,250 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:15:18,250 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:15:18,250 INFO L85 PathProgramCache]: Analyzing trace with hash 1140868055, now seen corresponding path program 2 times [2022-04-15 09:15:18,250 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:15:18,250 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [558622060] [2022-04-15 09:15:18,250 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:15:18,250 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:15:18,281 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:15:18,281 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1340925402] [2022-04-15 09:15:18,281 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:15:18,281 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:15:18,281 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:15:18,292 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:15:18,293 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-15 09:15:18,336 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:15:18,336 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:15:18,337 INFO L263 TraceCheckSpWp]: Trace formula consists of 185 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-15 09:15:18,348 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:15:18,350 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:15:18,629 INFO L272 TraceCheckUtils]: 0: Hoare triple {6309#true} call ULTIMATE.init(); {6309#true} is VALID [2022-04-15 09:15:18,630 INFO L290 TraceCheckUtils]: 1: Hoare triple {6309#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6317#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:18,630 INFO L290 TraceCheckUtils]: 2: Hoare triple {6317#(<= ~counter~0 0)} assume true; {6317#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:18,631 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6317#(<= ~counter~0 0)} {6309#true} #96#return; {6317#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:18,631 INFO L272 TraceCheckUtils]: 4: Hoare triple {6317#(<= ~counter~0 0)} call #t~ret8 := main(); {6317#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:18,631 INFO L290 TraceCheckUtils]: 5: Hoare triple {6317#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {6317#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:18,632 INFO L272 TraceCheckUtils]: 6: Hoare triple {6317#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {6317#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:18,632 INFO L290 TraceCheckUtils]: 7: Hoare triple {6317#(<= ~counter~0 0)} ~cond := #in~cond; {6317#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:18,632 INFO L290 TraceCheckUtils]: 8: Hoare triple {6317#(<= ~counter~0 0)} assume !(0 == ~cond); {6317#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:18,632 INFO L290 TraceCheckUtils]: 9: Hoare triple {6317#(<= ~counter~0 0)} assume true; {6317#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:18,633 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6317#(<= ~counter~0 0)} {6317#(<= ~counter~0 0)} #80#return; {6317#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:18,633 INFO L290 TraceCheckUtils]: 11: Hoare triple {6317#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {6317#(<= ~counter~0 0)} is VALID [2022-04-15 09:15:18,640 INFO L290 TraceCheckUtils]: 12: Hoare triple {6317#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,641 INFO L290 TraceCheckUtils]: 13: Hoare triple {6351#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,641 INFO L272 TraceCheckUtils]: 14: Hoare triple {6351#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,641 INFO L290 TraceCheckUtils]: 15: Hoare triple {6351#(<= ~counter~0 1)} ~cond := #in~cond; {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,642 INFO L290 TraceCheckUtils]: 16: Hoare triple {6351#(<= ~counter~0 1)} assume !(0 == ~cond); {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,642 INFO L290 TraceCheckUtils]: 17: Hoare triple {6351#(<= ~counter~0 1)} assume true; {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,642 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6351#(<= ~counter~0 1)} {6351#(<= ~counter~0 1)} #82#return; {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,643 INFO L272 TraceCheckUtils]: 19: Hoare triple {6351#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,643 INFO L290 TraceCheckUtils]: 20: Hoare triple {6351#(<= ~counter~0 1)} ~cond := #in~cond; {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,643 INFO L290 TraceCheckUtils]: 21: Hoare triple {6351#(<= ~counter~0 1)} assume !(0 == ~cond); {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,643 INFO L290 TraceCheckUtils]: 22: Hoare triple {6351#(<= ~counter~0 1)} assume true; {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,644 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6351#(<= ~counter~0 1)} {6351#(<= ~counter~0 1)} #84#return; {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,644 INFO L272 TraceCheckUtils]: 24: Hoare triple {6351#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,645 INFO L290 TraceCheckUtils]: 25: Hoare triple {6351#(<= ~counter~0 1)} ~cond := #in~cond; {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,645 INFO L290 TraceCheckUtils]: 26: Hoare triple {6351#(<= ~counter~0 1)} assume !(0 == ~cond); {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,645 INFO L290 TraceCheckUtils]: 27: Hoare triple {6351#(<= ~counter~0 1)} assume true; {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,646 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6351#(<= ~counter~0 1)} {6351#(<= ~counter~0 1)} #86#return; {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,646 INFO L290 TraceCheckUtils]: 29: Hoare triple {6351#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {6351#(<= ~counter~0 1)} is VALID [2022-04-15 09:15:18,646 INFO L290 TraceCheckUtils]: 30: Hoare triple {6351#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,647 INFO L290 TraceCheckUtils]: 31: Hoare triple {6406#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,647 INFO L272 TraceCheckUtils]: 32: Hoare triple {6406#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,647 INFO L290 TraceCheckUtils]: 33: Hoare triple {6406#(<= ~counter~0 2)} ~cond := #in~cond; {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,647 INFO L290 TraceCheckUtils]: 34: Hoare triple {6406#(<= ~counter~0 2)} assume !(0 == ~cond); {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,648 INFO L290 TraceCheckUtils]: 35: Hoare triple {6406#(<= ~counter~0 2)} assume true; {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,648 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6406#(<= ~counter~0 2)} {6406#(<= ~counter~0 2)} #82#return; {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,648 INFO L272 TraceCheckUtils]: 37: Hoare triple {6406#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,649 INFO L290 TraceCheckUtils]: 38: Hoare triple {6406#(<= ~counter~0 2)} ~cond := #in~cond; {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,649 INFO L290 TraceCheckUtils]: 39: Hoare triple {6406#(<= ~counter~0 2)} assume !(0 == ~cond); {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,649 INFO L290 TraceCheckUtils]: 40: Hoare triple {6406#(<= ~counter~0 2)} assume true; {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,650 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6406#(<= ~counter~0 2)} {6406#(<= ~counter~0 2)} #84#return; {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,650 INFO L272 TraceCheckUtils]: 42: Hoare triple {6406#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,650 INFO L290 TraceCheckUtils]: 43: Hoare triple {6406#(<= ~counter~0 2)} ~cond := #in~cond; {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,651 INFO L290 TraceCheckUtils]: 44: Hoare triple {6406#(<= ~counter~0 2)} assume !(0 == ~cond); {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,651 INFO L290 TraceCheckUtils]: 45: Hoare triple {6406#(<= ~counter~0 2)} assume true; {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,651 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {6406#(<= ~counter~0 2)} {6406#(<= ~counter~0 2)} #86#return; {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,652 INFO L290 TraceCheckUtils]: 47: Hoare triple {6406#(<= ~counter~0 2)} assume !(~r~0 >= ~d~0); {6406#(<= ~counter~0 2)} is VALID [2022-04-15 09:15:18,652 INFO L290 TraceCheckUtils]: 48: Hoare triple {6406#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6461#(<= ~counter~0 3)} is VALID [2022-04-15 09:15:18,652 INFO L290 TraceCheckUtils]: 49: Hoare triple {6461#(<= ~counter~0 3)} assume !!(#t~post7 < 10);havoc #t~post7; {6461#(<= ~counter~0 3)} is VALID [2022-04-15 09:15:18,653 INFO L272 TraceCheckUtils]: 50: Hoare triple {6461#(<= ~counter~0 3)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {6461#(<= ~counter~0 3)} is VALID [2022-04-15 09:15:18,653 INFO L290 TraceCheckUtils]: 51: Hoare triple {6461#(<= ~counter~0 3)} ~cond := #in~cond; {6461#(<= ~counter~0 3)} is VALID [2022-04-15 09:15:18,653 INFO L290 TraceCheckUtils]: 52: Hoare triple {6461#(<= ~counter~0 3)} assume !(0 == ~cond); {6461#(<= ~counter~0 3)} is VALID [2022-04-15 09:15:18,654 INFO L290 TraceCheckUtils]: 53: Hoare triple {6461#(<= ~counter~0 3)} assume true; {6461#(<= ~counter~0 3)} is VALID [2022-04-15 09:15:18,654 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {6461#(<= ~counter~0 3)} {6461#(<= ~counter~0 3)} #88#return; {6461#(<= ~counter~0 3)} is VALID [2022-04-15 09:15:18,655 INFO L272 TraceCheckUtils]: 55: Hoare triple {6461#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6461#(<= ~counter~0 3)} is VALID [2022-04-15 09:15:18,655 INFO L290 TraceCheckUtils]: 56: Hoare triple {6461#(<= ~counter~0 3)} ~cond := #in~cond; {6461#(<= ~counter~0 3)} is VALID [2022-04-15 09:15:18,655 INFO L290 TraceCheckUtils]: 57: Hoare triple {6461#(<= ~counter~0 3)} assume !(0 == ~cond); {6461#(<= ~counter~0 3)} is VALID [2022-04-15 09:15:18,655 INFO L290 TraceCheckUtils]: 58: Hoare triple {6461#(<= ~counter~0 3)} assume true; {6461#(<= ~counter~0 3)} is VALID [2022-04-15 09:15:18,656 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {6461#(<= ~counter~0 3)} {6461#(<= ~counter~0 3)} #90#return; {6461#(<= ~counter~0 3)} is VALID [2022-04-15 09:15:18,656 INFO L290 TraceCheckUtils]: 60: Hoare triple {6461#(<= ~counter~0 3)} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {6461#(<= ~counter~0 3)} is VALID [2022-04-15 09:15:18,657 INFO L290 TraceCheckUtils]: 61: Hoare triple {6461#(<= ~counter~0 3)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {6461#(<= ~counter~0 3)} is VALID [2022-04-15 09:15:18,657 INFO L290 TraceCheckUtils]: 62: Hoare triple {6461#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6504#(<= |main_#t~post7| 3)} is VALID [2022-04-15 09:15:18,657 INFO L290 TraceCheckUtils]: 63: Hoare triple {6504#(<= |main_#t~post7| 3)} assume !(#t~post7 < 10);havoc #t~post7; {6310#false} is VALID [2022-04-15 09:15:18,657 INFO L272 TraceCheckUtils]: 64: Hoare triple {6310#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {6310#false} is VALID [2022-04-15 09:15:18,657 INFO L290 TraceCheckUtils]: 65: Hoare triple {6310#false} ~cond := #in~cond; {6310#false} is VALID [2022-04-15 09:15:18,657 INFO L290 TraceCheckUtils]: 66: Hoare triple {6310#false} assume 0 == ~cond; {6310#false} is VALID [2022-04-15 09:15:18,657 INFO L290 TraceCheckUtils]: 67: Hoare triple {6310#false} assume !false; {6310#false} is VALID [2022-04-15 09:15:18,658 INFO L134 CoverageAnalysis]: Checked inductivity of 136 backedges. 16 proven. 92 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 09:15:18,658 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:15:18,944 INFO L290 TraceCheckUtils]: 67: Hoare triple {6310#false} assume !false; {6310#false} is VALID [2022-04-15 09:15:18,944 INFO L290 TraceCheckUtils]: 66: Hoare triple {6310#false} assume 0 == ~cond; {6310#false} is VALID [2022-04-15 09:15:18,944 INFO L290 TraceCheckUtils]: 65: Hoare triple {6310#false} ~cond := #in~cond; {6310#false} is VALID [2022-04-15 09:15:18,944 INFO L272 TraceCheckUtils]: 64: Hoare triple {6310#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {6310#false} is VALID [2022-04-15 09:15:18,945 INFO L290 TraceCheckUtils]: 63: Hoare triple {6532#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {6310#false} is VALID [2022-04-15 09:15:18,945 INFO L290 TraceCheckUtils]: 62: Hoare triple {6536#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6532#(< |main_#t~post7| 10)} is VALID [2022-04-15 09:15:18,945 INFO L290 TraceCheckUtils]: 61: Hoare triple {6536#(< ~counter~0 10)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {6536#(< ~counter~0 10)} is VALID [2022-04-15 09:15:18,946 INFO L290 TraceCheckUtils]: 60: Hoare triple {6536#(< ~counter~0 10)} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {6536#(< ~counter~0 10)} is VALID [2022-04-15 09:15:18,946 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {6309#true} {6536#(< ~counter~0 10)} #90#return; {6536#(< ~counter~0 10)} is VALID [2022-04-15 09:15:18,946 INFO L290 TraceCheckUtils]: 58: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-15 09:15:18,946 INFO L290 TraceCheckUtils]: 57: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-15 09:15:18,946 INFO L290 TraceCheckUtils]: 56: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-15 09:15:18,946 INFO L272 TraceCheckUtils]: 55: Hoare triple {6536#(< ~counter~0 10)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6309#true} is VALID [2022-04-15 09:15:18,947 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {6309#true} {6536#(< ~counter~0 10)} #88#return; {6536#(< ~counter~0 10)} is VALID [2022-04-15 09:15:18,961 INFO L290 TraceCheckUtils]: 53: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-15 09:15:18,961 INFO L290 TraceCheckUtils]: 52: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-15 09:15:18,961 INFO L290 TraceCheckUtils]: 51: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-15 09:15:18,961 INFO L272 TraceCheckUtils]: 50: Hoare triple {6536#(< ~counter~0 10)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {6309#true} is VALID [2022-04-15 09:15:18,962 INFO L290 TraceCheckUtils]: 49: Hoare triple {6536#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {6536#(< ~counter~0 10)} is VALID [2022-04-15 09:15:18,963 INFO L290 TraceCheckUtils]: 48: Hoare triple {6579#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6536#(< ~counter~0 10)} is VALID [2022-04-15 09:15:18,963 INFO L290 TraceCheckUtils]: 47: Hoare triple {6579#(< ~counter~0 9)} assume !(~r~0 >= ~d~0); {6579#(< ~counter~0 9)} is VALID [2022-04-15 09:15:18,964 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {6309#true} {6579#(< ~counter~0 9)} #86#return; {6579#(< ~counter~0 9)} is VALID [2022-04-15 09:15:18,964 INFO L290 TraceCheckUtils]: 45: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-15 09:15:18,964 INFO L290 TraceCheckUtils]: 44: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-15 09:15:18,964 INFO L290 TraceCheckUtils]: 43: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-15 09:15:18,964 INFO L272 TraceCheckUtils]: 42: Hoare triple {6579#(< ~counter~0 9)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6309#true} is VALID [2022-04-15 09:15:18,976 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6309#true} {6579#(< ~counter~0 9)} #84#return; {6579#(< ~counter~0 9)} is VALID [2022-04-15 09:15:18,976 INFO L290 TraceCheckUtils]: 40: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-15 09:15:18,976 INFO L290 TraceCheckUtils]: 39: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-15 09:15:18,976 INFO L290 TraceCheckUtils]: 38: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-15 09:15:18,976 INFO L272 TraceCheckUtils]: 37: Hoare triple {6579#(< ~counter~0 9)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {6309#true} is VALID [2022-04-15 09:15:18,977 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6309#true} {6579#(< ~counter~0 9)} #82#return; {6579#(< ~counter~0 9)} is VALID [2022-04-15 09:15:18,977 INFO L290 TraceCheckUtils]: 35: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-15 09:15:18,977 INFO L290 TraceCheckUtils]: 34: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-15 09:15:18,977 INFO L290 TraceCheckUtils]: 33: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-15 09:15:18,977 INFO L272 TraceCheckUtils]: 32: Hoare triple {6579#(< ~counter~0 9)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {6309#true} is VALID [2022-04-15 09:15:18,977 INFO L290 TraceCheckUtils]: 31: Hoare triple {6579#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {6579#(< ~counter~0 9)} is VALID [2022-04-15 09:15:18,978 INFO L290 TraceCheckUtils]: 30: Hoare triple {6634#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6579#(< ~counter~0 9)} is VALID [2022-04-15 09:15:18,978 INFO L290 TraceCheckUtils]: 29: Hoare triple {6634#(< ~counter~0 8)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {6634#(< ~counter~0 8)} is VALID [2022-04-15 09:15:18,979 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6309#true} {6634#(< ~counter~0 8)} #86#return; {6634#(< ~counter~0 8)} is VALID [2022-04-15 09:15:18,979 INFO L290 TraceCheckUtils]: 27: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-15 09:15:18,979 INFO L290 TraceCheckUtils]: 26: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-15 09:15:18,979 INFO L290 TraceCheckUtils]: 25: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-15 09:15:18,979 INFO L272 TraceCheckUtils]: 24: Hoare triple {6634#(< ~counter~0 8)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6309#true} is VALID [2022-04-15 09:15:18,979 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6309#true} {6634#(< ~counter~0 8)} #84#return; {6634#(< ~counter~0 8)} is VALID [2022-04-15 09:15:18,979 INFO L290 TraceCheckUtils]: 22: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-15 09:15:18,979 INFO L290 TraceCheckUtils]: 21: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-15 09:15:18,979 INFO L290 TraceCheckUtils]: 20: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-15 09:15:18,980 INFO L272 TraceCheckUtils]: 19: Hoare triple {6634#(< ~counter~0 8)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {6309#true} is VALID [2022-04-15 09:15:18,980 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6309#true} {6634#(< ~counter~0 8)} #82#return; {6634#(< ~counter~0 8)} is VALID [2022-04-15 09:15:18,980 INFO L290 TraceCheckUtils]: 17: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-15 09:15:18,980 INFO L290 TraceCheckUtils]: 16: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-15 09:15:18,980 INFO L290 TraceCheckUtils]: 15: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-15 09:15:18,980 INFO L272 TraceCheckUtils]: 14: Hoare triple {6634#(< ~counter~0 8)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {6309#true} is VALID [2022-04-15 09:15:18,980 INFO L290 TraceCheckUtils]: 13: Hoare triple {6634#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {6634#(< ~counter~0 8)} is VALID [2022-04-15 09:15:18,981 INFO L290 TraceCheckUtils]: 12: Hoare triple {6689#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6634#(< ~counter~0 8)} is VALID [2022-04-15 09:15:18,981 INFO L290 TraceCheckUtils]: 11: Hoare triple {6689#(< ~counter~0 7)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {6689#(< ~counter~0 7)} is VALID [2022-04-15 09:15:18,982 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6309#true} {6689#(< ~counter~0 7)} #80#return; {6689#(< ~counter~0 7)} is VALID [2022-04-15 09:15:18,982 INFO L290 TraceCheckUtils]: 9: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-15 09:15:18,982 INFO L290 TraceCheckUtils]: 8: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-15 09:15:18,982 INFO L290 TraceCheckUtils]: 7: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-15 09:15:18,982 INFO L272 TraceCheckUtils]: 6: Hoare triple {6689#(< ~counter~0 7)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {6309#true} is VALID [2022-04-15 09:15:18,982 INFO L290 TraceCheckUtils]: 5: Hoare triple {6689#(< ~counter~0 7)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {6689#(< ~counter~0 7)} is VALID [2022-04-15 09:15:18,982 INFO L272 TraceCheckUtils]: 4: Hoare triple {6689#(< ~counter~0 7)} call #t~ret8 := main(); {6689#(< ~counter~0 7)} is VALID [2022-04-15 09:15:18,983 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6689#(< ~counter~0 7)} {6309#true} #96#return; {6689#(< ~counter~0 7)} is VALID [2022-04-15 09:15:18,983 INFO L290 TraceCheckUtils]: 2: Hoare triple {6689#(< ~counter~0 7)} assume true; {6689#(< ~counter~0 7)} is VALID [2022-04-15 09:15:18,983 INFO L290 TraceCheckUtils]: 1: Hoare triple {6309#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6689#(< ~counter~0 7)} is VALID [2022-04-15 09:15:18,984 INFO L272 TraceCheckUtils]: 0: Hoare triple {6309#true} call ULTIMATE.init(); {6309#true} is VALID [2022-04-15 09:15:18,984 INFO L134 CoverageAnalysis]: Checked inductivity of 136 backedges. 16 proven. 8 refuted. 0 times theorem prover too weak. 112 trivial. 0 not checked. [2022-04-15 09:15:18,984 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:15:18,984 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [558622060] [2022-04-15 09:15:18,984 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:15:18,984 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1340925402] [2022-04-15 09:15:18,984 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1340925402] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:15:18,984 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:15:18,984 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-15 09:15:18,984 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:15:18,984 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [273310339] [2022-04-15 09:15:18,985 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [273310339] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:15:18,985 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:15:18,985 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-15 09:15:18,985 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [742268680] [2022-04-15 09:15:18,985 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:15:18,985 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.428571428571429) internal successors, (31), 6 states have internal predecessors, (31), 6 states have call successors, (12), 6 states have call predecessors, (12), 4 states have return successors, (10), 4 states have call predecessors, (10), 5 states have call successors, (10) Word has length 68 [2022-04-15 09:15:18,985 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:15:18,985 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.428571428571429) internal successors, (31), 6 states have internal predecessors, (31), 6 states have call successors, (12), 6 states have call predecessors, (12), 4 states have return successors, (10), 4 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-15 09:15:19,025 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:15:19,025 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-15 09:15:19,025 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:15:19,025 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-15 09:15:19,025 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-15 09:15:19,026 INFO L87 Difference]: Start difference. First operand 99 states and 115 transitions. Second operand has 7 states, 7 states have (on average 4.428571428571429) internal successors, (31), 6 states have internal predecessors, (31), 6 states have call successors, (12), 6 states have call predecessors, (12), 4 states have return successors, (10), 4 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-15 09:15:19,434 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:15:19,434 INFO L93 Difference]: Finished difference Result 151 states and 174 transitions. [2022-04-15 09:15:19,434 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 09:15:19,434 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.428571428571429) internal successors, (31), 6 states have internal predecessors, (31), 6 states have call successors, (12), 6 states have call predecessors, (12), 4 states have return successors, (10), 4 states have call predecessors, (10), 5 states have call successors, (10) Word has length 68 [2022-04-15 09:15:19,434 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:15:19,434 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.428571428571429) internal successors, (31), 6 states have internal predecessors, (31), 6 states have call successors, (12), 6 states have call predecessors, (12), 4 states have return successors, (10), 4 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-15 09:15:19,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 107 transitions. [2022-04-15 09:15:19,436 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.428571428571429) internal successors, (31), 6 states have internal predecessors, (31), 6 states have call successors, (12), 6 states have call predecessors, (12), 4 states have return successors, (10), 4 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-15 09:15:19,437 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 107 transitions. [2022-04-15 09:15:19,437 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 107 transitions. [2022-04-15 09:15:19,513 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 107 edges. 107 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:15:19,515 INFO L225 Difference]: With dead ends: 151 [2022-04-15 09:15:19,515 INFO L226 Difference]: Without dead ends: 136 [2022-04-15 09:15:19,515 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 136 GetRequests, 125 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=59, Invalid=97, Unknown=0, NotChecked=0, Total=156 [2022-04-15 09:15:19,515 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 41 mSDsluCounter, 121 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 174 SdHoareTripleChecker+Invalid, 85 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 09:15:19,516 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 174 Invalid, 85 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 09:15:19,516 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 136 states. [2022-04-15 09:15:19,616 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 136 to 133. [2022-04-15 09:15:19,616 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:15:19,616 INFO L82 GeneralOperation]: Start isEquivalent. First operand 136 states. Second operand has 133 states, 87 states have (on average 1.160919540229885) internal successors, (101), 90 states have internal predecessors, (101), 28 states have call successors, (28), 19 states have call predecessors, (28), 17 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:15:19,617 INFO L74 IsIncluded]: Start isIncluded. First operand 136 states. Second operand has 133 states, 87 states have (on average 1.160919540229885) internal successors, (101), 90 states have internal predecessors, (101), 28 states have call successors, (28), 19 states have call predecessors, (28), 17 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:15:19,617 INFO L87 Difference]: Start difference. First operand 136 states. Second operand has 133 states, 87 states have (on average 1.160919540229885) internal successors, (101), 90 states have internal predecessors, (101), 28 states have call successors, (28), 19 states have call predecessors, (28), 17 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:15:19,619 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:15:19,619 INFO L93 Difference]: Finished difference Result 136 states and 156 transitions. [2022-04-15 09:15:19,619 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 156 transitions. [2022-04-15 09:15:19,619 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:15:19,619 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:15:19,620 INFO L74 IsIncluded]: Start isIncluded. First operand has 133 states, 87 states have (on average 1.160919540229885) internal successors, (101), 90 states have internal predecessors, (101), 28 states have call successors, (28), 19 states have call predecessors, (28), 17 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) Second operand 136 states. [2022-04-15 09:15:19,620 INFO L87 Difference]: Start difference. First operand has 133 states, 87 states have (on average 1.160919540229885) internal successors, (101), 90 states have internal predecessors, (101), 28 states have call successors, (28), 19 states have call predecessors, (28), 17 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) Second operand 136 states. [2022-04-15 09:15:19,622 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:15:19,622 INFO L93 Difference]: Finished difference Result 136 states and 156 transitions. [2022-04-15 09:15:19,622 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 156 transitions. [2022-04-15 09:15:19,622 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:15:19,622 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:15:19,622 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:15:19,622 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:15:19,622 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 133 states, 87 states have (on average 1.160919540229885) internal successors, (101), 90 states have internal predecessors, (101), 28 states have call successors, (28), 19 states have call predecessors, (28), 17 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:15:19,624 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 133 states to 133 states and 154 transitions. [2022-04-15 09:15:19,624 INFO L78 Accepts]: Start accepts. Automaton has 133 states and 154 transitions. Word has length 68 [2022-04-15 09:15:19,624 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:15:19,625 INFO L478 AbstractCegarLoop]: Abstraction has 133 states and 154 transitions. [2022-04-15 09:15:19,625 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.428571428571429) internal successors, (31), 6 states have internal predecessors, (31), 6 states have call successors, (12), 6 states have call predecessors, (12), 4 states have return successors, (10), 4 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-15 09:15:19,625 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 133 states and 154 transitions. [2022-04-15 09:15:19,771 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 154 edges. 154 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:15:19,771 INFO L276 IsEmpty]: Start isEmpty. Operand 133 states and 154 transitions. [2022-04-15 09:15:19,771 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 69 [2022-04-15 09:15:19,771 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:15:19,771 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:15:19,790 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Ended with exit code 0 [2022-04-15 09:15:19,972 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11,10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:15:19,972 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:15:19,972 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:15:19,972 INFO L85 PathProgramCache]: Analyzing trace with hash 1142595933, now seen corresponding path program 1 times [2022-04-15 09:15:19,972 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:15:19,972 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [605829304] [2022-04-15 09:15:25,860 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:15:25,860 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:15:25,860 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:15:25,860 INFO L85 PathProgramCache]: Analyzing trace with hash 1142595933, now seen corresponding path program 2 times [2022-04-15 09:15:25,860 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:15:25,860 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1103989482] [2022-04-15 09:15:25,860 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:15:25,861 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:15:25,884 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:15:25,884 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [748289332] [2022-04-15 09:15:25,884 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:15:25,884 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:15:25,884 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:15:25,885 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:15:25,927 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-15 09:15:25,941 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:15:25,941 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:15:25,942 INFO L263 TraceCheckSpWp]: Trace formula consists of 185 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-15 09:15:25,952 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:15:25,953 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:15:29,508 INFO L272 TraceCheckUtils]: 0: Hoare triple {7570#true} call ULTIMATE.init(); {7570#true} is VALID [2022-04-15 09:15:29,508 INFO L290 TraceCheckUtils]: 1: Hoare triple {7570#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7570#true} is VALID [2022-04-15 09:15:29,508 INFO L290 TraceCheckUtils]: 2: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:29,508 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7570#true} {7570#true} #96#return; {7570#true} is VALID [2022-04-15 09:15:29,509 INFO L272 TraceCheckUtils]: 4: Hoare triple {7570#true} call #t~ret8 := main(); {7570#true} is VALID [2022-04-15 09:15:29,509 INFO L290 TraceCheckUtils]: 5: Hoare triple {7570#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {7570#true} is VALID [2022-04-15 09:15:29,509 INFO L272 TraceCheckUtils]: 6: Hoare triple {7570#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:29,509 INFO L290 TraceCheckUtils]: 7: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:29,509 INFO L290 TraceCheckUtils]: 8: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:29,509 INFO L290 TraceCheckUtils]: 9: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:29,509 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7570#true} {7570#true} #80#return; {7570#true} is VALID [2022-04-15 09:15:29,509 INFO L290 TraceCheckUtils]: 11: Hoare triple {7570#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {7608#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:15:29,510 INFO L290 TraceCheckUtils]: 12: Hoare triple {7608#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7608#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:15:29,510 INFO L290 TraceCheckUtils]: 13: Hoare triple {7608#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {7608#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:15:29,510 INFO L272 TraceCheckUtils]: 14: Hoare triple {7608#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:29,510 INFO L290 TraceCheckUtils]: 15: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:29,510 INFO L290 TraceCheckUtils]: 16: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:29,510 INFO L290 TraceCheckUtils]: 17: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:29,511 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {7570#true} {7608#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} #82#return; {7608#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:15:29,511 INFO L272 TraceCheckUtils]: 19: Hoare triple {7608#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:29,511 INFO L290 TraceCheckUtils]: 20: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:29,511 INFO L290 TraceCheckUtils]: 21: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:29,511 INFO L290 TraceCheckUtils]: 22: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:29,512 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7570#true} {7608#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} #84#return; {7608#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:15:29,512 INFO L272 TraceCheckUtils]: 24: Hoare triple {7608#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:29,512 INFO L290 TraceCheckUtils]: 25: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:29,512 INFO L290 TraceCheckUtils]: 26: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:29,512 INFO L290 TraceCheckUtils]: 27: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:29,512 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {7570#true} {7608#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} #86#return; {7608#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:15:29,513 INFO L290 TraceCheckUtils]: 29: Hoare triple {7608#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {7663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:29,513 INFO L290 TraceCheckUtils]: 30: Hoare triple {7663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:29,514 INFO L290 TraceCheckUtils]: 31: Hoare triple {7663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !!(#t~post6 < 10);havoc #t~post6; {7663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:29,514 INFO L272 TraceCheckUtils]: 32: Hoare triple {7663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:29,514 INFO L290 TraceCheckUtils]: 33: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:29,514 INFO L290 TraceCheckUtils]: 34: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:29,514 INFO L290 TraceCheckUtils]: 35: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:29,515 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7570#true} {7663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #82#return; {7663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:29,515 INFO L272 TraceCheckUtils]: 37: Hoare triple {7663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:29,515 INFO L290 TraceCheckUtils]: 38: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:29,515 INFO L290 TraceCheckUtils]: 39: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:29,515 INFO L290 TraceCheckUtils]: 40: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:29,515 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7570#true} {7663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #84#return; {7663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:29,516 INFO L272 TraceCheckUtils]: 42: Hoare triple {7663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:29,516 INFO L290 TraceCheckUtils]: 43: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:29,516 INFO L290 TraceCheckUtils]: 44: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:29,516 INFO L290 TraceCheckUtils]: 45: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:29,516 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {7570#true} {7663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #86#return; {7663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:29,517 INFO L290 TraceCheckUtils]: 47: Hoare triple {7663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !(~r~0 >= ~d~0); {7718#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:29,517 INFO L290 TraceCheckUtils]: 48: Hoare triple {7718#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7718#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:29,517 INFO L290 TraceCheckUtils]: 49: Hoare triple {7718#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !!(#t~post7 < 10);havoc #t~post7; {7718#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:29,518 INFO L272 TraceCheckUtils]: 50: Hoare triple {7718#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:29,518 INFO L290 TraceCheckUtils]: 51: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:29,518 INFO L290 TraceCheckUtils]: 52: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:29,518 INFO L290 TraceCheckUtils]: 53: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:29,518 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {7570#true} {7718#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #88#return; {7718#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:29,518 INFO L272 TraceCheckUtils]: 55: Hoare triple {7718#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:29,518 INFO L290 TraceCheckUtils]: 56: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:29,518 INFO L290 TraceCheckUtils]: 57: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:29,518 INFO L290 TraceCheckUtils]: 58: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:29,519 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {7570#true} {7718#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #90#return; {7718#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:29,520 INFO L290 TraceCheckUtils]: 60: Hoare triple {7718#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {7758#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (not (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0)) (<= (mod main_~B~0 4294967296) main_~r~0) (= main_~p~0 1))} is VALID [2022-04-15 09:15:29,521 INFO L290 TraceCheckUtils]: 61: Hoare triple {7758#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (not (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0)) (<= (mod main_~B~0 4294967296) main_~r~0) (= main_~p~0 1))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {7762#(and (not (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296))) (<= (mod main_~B~0 4294967296) (mod main_~A~0 4294967296)) (= (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296)) main_~r~0) (= main_~q~0 1))} is VALID [2022-04-15 09:15:29,521 INFO L290 TraceCheckUtils]: 62: Hoare triple {7762#(and (not (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296))) (<= (mod main_~B~0 4294967296) (mod main_~A~0 4294967296)) (= (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296)) main_~r~0) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7762#(and (not (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296))) (<= (mod main_~B~0 4294967296) (mod main_~A~0 4294967296)) (= (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296)) main_~r~0) (= main_~q~0 1))} is VALID [2022-04-15 09:15:29,522 INFO L290 TraceCheckUtils]: 63: Hoare triple {7762#(and (not (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296))) (<= (mod main_~B~0 4294967296) (mod main_~A~0 4294967296)) (= (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296)) main_~r~0) (= main_~q~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {7762#(and (not (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296))) (<= (mod main_~B~0 4294967296) (mod main_~A~0 4294967296)) (= (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296)) main_~r~0) (= main_~q~0 1))} is VALID [2022-04-15 09:15:29,531 INFO L272 TraceCheckUtils]: 64: Hoare triple {7762#(and (not (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296))) (<= (mod main_~B~0 4294967296) (mod main_~A~0 4294967296)) (= (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296)) main_~r~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {7772#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:15:29,532 INFO L290 TraceCheckUtils]: 65: Hoare triple {7772#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7776#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:15:29,533 INFO L290 TraceCheckUtils]: 66: Hoare triple {7776#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7571#false} is VALID [2022-04-15 09:15:29,533 INFO L290 TraceCheckUtils]: 67: Hoare triple {7571#false} assume !false; {7571#false} is VALID [2022-04-15 09:15:29,533 INFO L134 CoverageAnalysis]: Checked inductivity of 137 backedges. 16 proven. 9 refuted. 0 times theorem prover too weak. 112 trivial. 0 not checked. [2022-04-15 09:15:29,533 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:15:36,417 INFO L290 TraceCheckUtils]: 67: Hoare triple {7571#false} assume !false; {7571#false} is VALID [2022-04-15 09:15:36,418 INFO L290 TraceCheckUtils]: 66: Hoare triple {7776#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7571#false} is VALID [2022-04-15 09:15:36,418 INFO L290 TraceCheckUtils]: 65: Hoare triple {7772#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7776#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:15:36,419 INFO L272 TraceCheckUtils]: 64: Hoare triple {7792#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {7772#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:15:36,419 INFO L290 TraceCheckUtils]: 63: Hoare triple {7792#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} assume !!(#t~post7 < 10);havoc #t~post7; {7792#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-15 09:15:36,419 INFO L290 TraceCheckUtils]: 62: Hoare triple {7792#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7792#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-15 09:15:36,421 INFO L290 TraceCheckUtils]: 61: Hoare triple {7802#(= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) (* (+ main_~q~0 main_~p~0) (mod main_~B~0 4294967296)) main_~r~0))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {7792#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-15 09:15:36,430 INFO L290 TraceCheckUtils]: 60: Hoare triple {7806#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {7802#(= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) (* (+ main_~q~0 main_~p~0) (mod main_~B~0 4294967296)) main_~r~0))} is VALID [2022-04-15 09:15:36,431 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {7570#true} {7806#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} #90#return; {7806#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:15:36,431 INFO L290 TraceCheckUtils]: 58: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:36,431 INFO L290 TraceCheckUtils]: 57: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:36,431 INFO L290 TraceCheckUtils]: 56: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:36,431 INFO L272 TraceCheckUtils]: 55: Hoare triple {7806#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:36,432 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {7570#true} {7806#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} #88#return; {7806#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:15:36,432 INFO L290 TraceCheckUtils]: 53: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:36,432 INFO L290 TraceCheckUtils]: 52: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:36,432 INFO L290 TraceCheckUtils]: 51: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:36,432 INFO L272 TraceCheckUtils]: 50: Hoare triple {7806#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:36,433 INFO L290 TraceCheckUtils]: 49: Hoare triple {7806#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} assume !!(#t~post7 < 10);havoc #t~post7; {7806#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:15:36,434 INFO L290 TraceCheckUtils]: 48: Hoare triple {7806#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7806#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:15:36,435 INFO L290 TraceCheckUtils]: 47: Hoare triple {7846#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} assume !(~r~0 >= ~d~0); {7806#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:15:36,435 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {7570#true} {7846#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} #86#return; {7846#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:15:36,436 INFO L290 TraceCheckUtils]: 45: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:36,436 INFO L290 TraceCheckUtils]: 44: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:36,436 INFO L290 TraceCheckUtils]: 43: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:36,436 INFO L272 TraceCheckUtils]: 42: Hoare triple {7846#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:36,436 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7570#true} {7846#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} #84#return; {7846#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:15:36,436 INFO L290 TraceCheckUtils]: 40: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:36,436 INFO L290 TraceCheckUtils]: 39: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:36,436 INFO L290 TraceCheckUtils]: 38: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:36,437 INFO L272 TraceCheckUtils]: 37: Hoare triple {7846#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:36,437 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7570#true} {7846#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} #82#return; {7846#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:15:36,437 INFO L290 TraceCheckUtils]: 35: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:36,437 INFO L290 TraceCheckUtils]: 34: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:36,437 INFO L290 TraceCheckUtils]: 33: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:36,437 INFO L272 TraceCheckUtils]: 32: Hoare triple {7846#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:36,438 INFO L290 TraceCheckUtils]: 31: Hoare triple {7846#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} assume !!(#t~post6 < 10);havoc #t~post6; {7846#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:15:36,439 INFO L290 TraceCheckUtils]: 30: Hoare triple {7846#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7846#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:15:36,442 INFO L290 TraceCheckUtils]: 29: Hoare triple {7901#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {7846#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:15:36,442 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {7570#true} {7901#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} #86#return; {7901#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:15:36,443 INFO L290 TraceCheckUtils]: 27: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:36,443 INFO L290 TraceCheckUtils]: 26: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:36,443 INFO L290 TraceCheckUtils]: 25: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:36,443 INFO L272 TraceCheckUtils]: 24: Hoare triple {7901#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:36,443 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7570#true} {7901#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} #84#return; {7901#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:15:36,443 INFO L290 TraceCheckUtils]: 22: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:36,443 INFO L290 TraceCheckUtils]: 21: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:36,443 INFO L290 TraceCheckUtils]: 20: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:36,443 INFO L272 TraceCheckUtils]: 19: Hoare triple {7901#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:36,444 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {7570#true} {7901#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} #82#return; {7901#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:15:36,444 INFO L290 TraceCheckUtils]: 17: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:36,444 INFO L290 TraceCheckUtils]: 16: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:36,444 INFO L290 TraceCheckUtils]: 15: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:36,444 INFO L272 TraceCheckUtils]: 14: Hoare triple {7901#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:36,445 INFO L290 TraceCheckUtils]: 13: Hoare triple {7901#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} assume !!(#t~post6 < 10);havoc #t~post6; {7901#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:15:36,445 INFO L290 TraceCheckUtils]: 12: Hoare triple {7901#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7901#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:15:36,446 INFO L290 TraceCheckUtils]: 11: Hoare triple {7570#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {7901#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:15:36,446 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7570#true} {7570#true} #80#return; {7570#true} is VALID [2022-04-15 09:15:36,446 INFO L290 TraceCheckUtils]: 9: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:36,446 INFO L290 TraceCheckUtils]: 8: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-15 09:15:36,446 INFO L290 TraceCheckUtils]: 7: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-15 09:15:36,446 INFO L272 TraceCheckUtils]: 6: Hoare triple {7570#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {7570#true} is VALID [2022-04-15 09:15:36,447 INFO L290 TraceCheckUtils]: 5: Hoare triple {7570#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {7570#true} is VALID [2022-04-15 09:15:36,447 INFO L272 TraceCheckUtils]: 4: Hoare triple {7570#true} call #t~ret8 := main(); {7570#true} is VALID [2022-04-15 09:15:36,447 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7570#true} {7570#true} #96#return; {7570#true} is VALID [2022-04-15 09:15:36,447 INFO L290 TraceCheckUtils]: 2: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-15 09:15:36,447 INFO L290 TraceCheckUtils]: 1: Hoare triple {7570#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7570#true} is VALID [2022-04-15 09:15:36,447 INFO L272 TraceCheckUtils]: 0: Hoare triple {7570#true} call ULTIMATE.init(); {7570#true} is VALID [2022-04-15 09:15:36,447 INFO L134 CoverageAnalysis]: Checked inductivity of 137 backedges. 16 proven. 9 refuted. 0 times theorem prover too weak. 112 trivial. 0 not checked. [2022-04-15 09:15:36,447 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:15:36,447 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1103989482] [2022-04-15 09:15:36,447 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:15:36,447 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [748289332] [2022-04-15 09:15:36,448 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [748289332] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:15:36,448 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:15:36,448 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-15 09:15:36,448 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:15:36,448 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [605829304] [2022-04-15 09:15:36,448 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [605829304] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:15:36,448 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:15:36,448 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 09:15:36,448 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1411014378] [2022-04-15 09:15:36,448 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:15:36,448 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 68 [2022-04-15 09:15:36,449 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:15:36,449 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:15:36,491 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:15:36,492 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 09:15:36,492 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:15:36,492 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 09:15:36,492 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2022-04-15 09:15:36,492 INFO L87 Difference]: Start difference. First operand 133 states and 154 transitions. Second operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:15:37,266 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:15:37,266 INFO L93 Difference]: Finished difference Result 178 states and 213 transitions. [2022-04-15 09:15:37,266 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 09:15:37,266 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 68 [2022-04-15 09:15:37,266 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:15:37,266 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:15:37,267 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-15 09:15:37,267 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:15:37,268 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-15 09:15:37,268 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 108 transitions. [2022-04-15 09:15:37,360 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:15:37,362 INFO L225 Difference]: With dead ends: 178 [2022-04-15 09:15:37,362 INFO L226 Difference]: Without dead ends: 143 [2022-04-15 09:15:37,363 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 136 GetRequests, 122 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 36 ImplicationChecksByTransitivity, 1.2s TimeCoverageRelationStatistics Valid=51, Invalid=159, Unknown=0, NotChecked=0, Total=210 [2022-04-15 09:15:37,363 INFO L913 BasicCegarLoop]: 50 mSDtfsCounter, 12 mSDsluCounter, 157 mSDsCounter, 0 mSdLazyCounter, 183 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 207 SdHoareTripleChecker+Invalid, 196 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 183 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 09:15:37,363 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [15 Valid, 207 Invalid, 196 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 183 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 09:15:37,364 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 143 states. [2022-04-15 09:15:37,533 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 143 to 141. [2022-04-15 09:15:37,533 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:15:37,533 INFO L82 GeneralOperation]: Start isEquivalent. First operand 143 states. Second operand has 141 states, 93 states have (on average 1.1612903225806452) internal successors, (108), 96 states have internal predecessors, (108), 28 states have call successors, (28), 20 states have call predecessors, (28), 19 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 09:15:37,533 INFO L74 IsIncluded]: Start isIncluded. First operand 143 states. Second operand has 141 states, 93 states have (on average 1.1612903225806452) internal successors, (108), 96 states have internal predecessors, (108), 28 states have call successors, (28), 20 states have call predecessors, (28), 19 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 09:15:37,534 INFO L87 Difference]: Start difference. First operand 143 states. Second operand has 141 states, 93 states have (on average 1.1612903225806452) internal successors, (108), 96 states have internal predecessors, (108), 28 states have call successors, (28), 20 states have call predecessors, (28), 19 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 09:15:37,537 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:15:37,537 INFO L93 Difference]: Finished difference Result 143 states and 165 transitions. [2022-04-15 09:15:37,537 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 165 transitions. [2022-04-15 09:15:37,538 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:15:37,538 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:15:37,538 INFO L74 IsIncluded]: Start isIncluded. First operand has 141 states, 93 states have (on average 1.1612903225806452) internal successors, (108), 96 states have internal predecessors, (108), 28 states have call successors, (28), 20 states have call predecessors, (28), 19 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) Second operand 143 states. [2022-04-15 09:15:37,538 INFO L87 Difference]: Start difference. First operand has 141 states, 93 states have (on average 1.1612903225806452) internal successors, (108), 96 states have internal predecessors, (108), 28 states have call successors, (28), 20 states have call predecessors, (28), 19 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) Second operand 143 states. [2022-04-15 09:15:37,541 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:15:37,541 INFO L93 Difference]: Finished difference Result 143 states and 165 transitions. [2022-04-15 09:15:37,541 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 165 transitions. [2022-04-15 09:15:37,541 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:15:37,541 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:15:37,541 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:15:37,541 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:15:37,543 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 141 states, 93 states have (on average 1.1612903225806452) internal successors, (108), 96 states have internal predecessors, (108), 28 states have call successors, (28), 20 states have call predecessors, (28), 19 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 09:15:37,544 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 141 states to 141 states and 162 transitions. [2022-04-15 09:15:37,545 INFO L78 Accepts]: Start accepts. Automaton has 141 states and 162 transitions. Word has length 68 [2022-04-15 09:15:37,545 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:15:37,545 INFO L478 AbstractCegarLoop]: Abstraction has 141 states and 162 transitions. [2022-04-15 09:15:37,548 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:15:37,549 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 141 states and 162 transitions. [2022-04-15 09:15:37,710 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:15:37,710 INFO L276 IsEmpty]: Start isEmpty. Operand 141 states and 162 transitions. [2022-04-15 09:15:37,710 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2022-04-15 09:15:37,711 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:15:37,711 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:15:37,729 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-15 09:15:37,911 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-15 09:15:37,911 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:15:37,911 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:15:37,912 INFO L85 PathProgramCache]: Analyzing trace with hash -1390565976, now seen corresponding path program 3 times [2022-04-15 09:15:37,912 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:15:37,912 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [309066421] [2022-04-15 09:15:45,171 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:15:45,172 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:15:45,172 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:15:45,172 INFO L85 PathProgramCache]: Analyzing trace with hash -1390565976, now seen corresponding path program 4 times [2022-04-15 09:15:45,172 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:15:45,172 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1059761376] [2022-04-15 09:15:45,172 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:15:45,172 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:15:45,180 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:15:45,180 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [406927692] [2022-04-15 09:15:45,180 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 09:15:45,180 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:15:45,180 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:15:45,181 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:15:45,182 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-15 09:15:45,227 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 09:15:45,227 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:15:45,227 INFO L263 TraceCheckSpWp]: Trace formula consists of 194 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-15 09:15:45,238 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:15:45,239 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:15:45,907 INFO L272 TraceCheckUtils]: 0: Hoare triple {8917#true} call ULTIMATE.init(); {8917#true} is VALID [2022-04-15 09:15:45,908 INFO L290 TraceCheckUtils]: 1: Hoare triple {8917#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8917#true} is VALID [2022-04-15 09:15:45,908 INFO L290 TraceCheckUtils]: 2: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:45,908 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8917#true} {8917#true} #96#return; {8917#true} is VALID [2022-04-15 09:15:45,908 INFO L272 TraceCheckUtils]: 4: Hoare triple {8917#true} call #t~ret8 := main(); {8917#true} is VALID [2022-04-15 09:15:45,908 INFO L290 TraceCheckUtils]: 5: Hoare triple {8917#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {8917#true} is VALID [2022-04-15 09:15:45,908 INFO L272 TraceCheckUtils]: 6: Hoare triple {8917#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:45,908 INFO L290 TraceCheckUtils]: 7: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:45,908 INFO L290 TraceCheckUtils]: 8: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:45,908 INFO L290 TraceCheckUtils]: 9: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:45,908 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8917#true} {8917#true} #80#return; {8917#true} is VALID [2022-04-15 09:15:45,908 INFO L290 TraceCheckUtils]: 11: Hoare triple {8917#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:15:45,909 INFO L290 TraceCheckUtils]: 12: Hoare triple {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:15:45,909 INFO L290 TraceCheckUtils]: 13: Hoare triple {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:15:45,909 INFO L272 TraceCheckUtils]: 14: Hoare triple {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:45,909 INFO L290 TraceCheckUtils]: 15: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:45,909 INFO L290 TraceCheckUtils]: 16: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:45,909 INFO L290 TraceCheckUtils]: 17: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:45,910 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {8917#true} {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #82#return; {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:15:45,910 INFO L272 TraceCheckUtils]: 19: Hoare triple {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:45,910 INFO L290 TraceCheckUtils]: 20: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:45,910 INFO L290 TraceCheckUtils]: 21: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:45,910 INFO L290 TraceCheckUtils]: 22: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:45,911 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8917#true} {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #84#return; {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:15:45,911 INFO L272 TraceCheckUtils]: 24: Hoare triple {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:45,911 INFO L290 TraceCheckUtils]: 25: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:45,911 INFO L290 TraceCheckUtils]: 26: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:45,911 INFO L290 TraceCheckUtils]: 27: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:45,911 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8917#true} {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #86#return; {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:15:45,912 INFO L290 TraceCheckUtils]: 29: Hoare triple {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:45,912 INFO L290 TraceCheckUtils]: 30: Hoare triple {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:45,913 INFO L290 TraceCheckUtils]: 31: Hoare triple {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !!(#t~post6 < 10);havoc #t~post6; {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:45,913 INFO L272 TraceCheckUtils]: 32: Hoare triple {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:45,913 INFO L290 TraceCheckUtils]: 33: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:45,913 INFO L290 TraceCheckUtils]: 34: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:45,913 INFO L290 TraceCheckUtils]: 35: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:45,913 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8917#true} {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} #82#return; {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:45,913 INFO L272 TraceCheckUtils]: 37: Hoare triple {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:45,914 INFO L290 TraceCheckUtils]: 38: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:45,914 INFO L290 TraceCheckUtils]: 39: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:45,914 INFO L290 TraceCheckUtils]: 40: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:45,914 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8917#true} {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} #84#return; {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:45,914 INFO L272 TraceCheckUtils]: 42: Hoare triple {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:45,914 INFO L290 TraceCheckUtils]: 43: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:45,914 INFO L290 TraceCheckUtils]: 44: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:45,914 INFO L290 TraceCheckUtils]: 45: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:45,915 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8917#true} {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} #86#return; {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:15:45,915 INFO L290 TraceCheckUtils]: 47: Hoare triple {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !(~r~0 >= ~d~0); {9065#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} is VALID [2022-04-15 09:15:45,916 INFO L290 TraceCheckUtils]: 48: Hoare triple {9065#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9065#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} is VALID [2022-04-15 09:15:45,916 INFO L290 TraceCheckUtils]: 49: Hoare triple {9065#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} assume !!(#t~post7 < 10);havoc #t~post7; {9065#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} is VALID [2022-04-15 09:15:45,916 INFO L272 TraceCheckUtils]: 50: Hoare triple {9065#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:45,916 INFO L290 TraceCheckUtils]: 51: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:45,916 INFO L290 TraceCheckUtils]: 52: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:45,916 INFO L290 TraceCheckUtils]: 53: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:45,917 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {8917#true} {9065#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} #88#return; {9065#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} is VALID [2022-04-15 09:15:45,917 INFO L272 TraceCheckUtils]: 55: Hoare triple {9065#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:45,917 INFO L290 TraceCheckUtils]: 56: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:45,917 INFO L290 TraceCheckUtils]: 57: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:45,917 INFO L290 TraceCheckUtils]: 58: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:45,918 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {8917#true} {9065#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} #90#return; {9065#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} is VALID [2022-04-15 09:15:45,918 INFO L290 TraceCheckUtils]: 60: Hoare triple {9065#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {9105#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:15:45,919 INFO L290 TraceCheckUtils]: 61: Hoare triple {9105#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {9105#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:15:45,919 INFO L290 TraceCheckUtils]: 62: Hoare triple {9105#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9105#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:15:45,920 INFO L290 TraceCheckUtils]: 63: Hoare triple {9105#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {9105#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:15:45,920 INFO L272 TraceCheckUtils]: 64: Hoare triple {9105#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:45,920 INFO L290 TraceCheckUtils]: 65: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:45,920 INFO L290 TraceCheckUtils]: 66: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:45,920 INFO L290 TraceCheckUtils]: 67: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:45,920 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {8917#true} {9105#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #88#return; {9105#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:15:45,921 INFO L272 TraceCheckUtils]: 69: Hoare triple {9105#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {9133#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:15:45,921 INFO L290 TraceCheckUtils]: 70: Hoare triple {9133#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9137#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:15:45,922 INFO L290 TraceCheckUtils]: 71: Hoare triple {9137#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8918#false} is VALID [2022-04-15 09:15:45,922 INFO L290 TraceCheckUtils]: 72: Hoare triple {8918#false} assume !false; {8918#false} is VALID [2022-04-15 09:15:45,922 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 18 proven. 10 refuted. 0 times theorem prover too weak. 144 trivial. 0 not checked. [2022-04-15 09:15:45,922 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:15:52,986 INFO L290 TraceCheckUtils]: 72: Hoare triple {8918#false} assume !false; {8918#false} is VALID [2022-04-15 09:15:52,987 INFO L290 TraceCheckUtils]: 71: Hoare triple {9137#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8918#false} is VALID [2022-04-15 09:15:52,987 INFO L290 TraceCheckUtils]: 70: Hoare triple {9133#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9137#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:15:52,988 INFO L272 TraceCheckUtils]: 69: Hoare triple {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {9133#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:15:52,988 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {8917#true} {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #88#return; {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:15:52,988 INFO L290 TraceCheckUtils]: 67: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:52,988 INFO L290 TraceCheckUtils]: 66: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:52,988 INFO L290 TraceCheckUtils]: 65: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:52,988 INFO L272 TraceCheckUtils]: 64: Hoare triple {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:52,989 INFO L290 TraceCheckUtils]: 63: Hoare triple {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !!(#t~post7 < 10);havoc #t~post7; {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:15:52,989 INFO L290 TraceCheckUtils]: 62: Hoare triple {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:15:52,989 INFO L290 TraceCheckUtils]: 61: Hoare triple {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:15:53,003 INFO L290 TraceCheckUtils]: 60: Hoare triple {9181#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:15:53,004 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {8917#true} {9181#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} #90#return; {9181#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:15:53,004 INFO L290 TraceCheckUtils]: 58: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:53,004 INFO L290 TraceCheckUtils]: 57: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:53,004 INFO L290 TraceCheckUtils]: 56: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:53,004 INFO L272 TraceCheckUtils]: 55: Hoare triple {9181#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:53,005 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {8917#true} {9181#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} #88#return; {9181#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:15:53,005 INFO L290 TraceCheckUtils]: 53: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:53,005 INFO L290 TraceCheckUtils]: 52: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:53,005 INFO L290 TraceCheckUtils]: 51: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:53,005 INFO L272 TraceCheckUtils]: 50: Hoare triple {9181#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:53,006 INFO L290 TraceCheckUtils]: 49: Hoare triple {9181#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} assume !!(#t~post7 < 10);havoc #t~post7; {9181#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:15:53,007 INFO L290 TraceCheckUtils]: 48: Hoare triple {9181#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9181#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:15:53,007 INFO L290 TraceCheckUtils]: 47: Hoare triple {9221#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} assume !(~r~0 >= ~d~0); {9181#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:15:53,008 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8917#true} {9221#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} #86#return; {9221#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:15:53,008 INFO L290 TraceCheckUtils]: 45: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:53,008 INFO L290 TraceCheckUtils]: 44: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:53,008 INFO L290 TraceCheckUtils]: 43: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:53,008 INFO L272 TraceCheckUtils]: 42: Hoare triple {9221#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:53,009 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8917#true} {9221#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} #84#return; {9221#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:15:53,009 INFO L290 TraceCheckUtils]: 40: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:53,009 INFO L290 TraceCheckUtils]: 39: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:53,009 INFO L290 TraceCheckUtils]: 38: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:53,009 INFO L272 TraceCheckUtils]: 37: Hoare triple {9221#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:53,009 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8917#true} {9221#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} #82#return; {9221#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:15:53,010 INFO L290 TraceCheckUtils]: 35: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:53,010 INFO L290 TraceCheckUtils]: 34: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:53,010 INFO L290 TraceCheckUtils]: 33: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:53,010 INFO L272 TraceCheckUtils]: 32: Hoare triple {9221#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:53,010 INFO L290 TraceCheckUtils]: 31: Hoare triple {9221#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} assume !!(#t~post6 < 10);havoc #t~post6; {9221#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:15:53,011 INFO L290 TraceCheckUtils]: 30: Hoare triple {9221#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9221#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:15:53,014 INFO L290 TraceCheckUtils]: 29: Hoare triple {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {9221#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:15:53,015 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8917#true} {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #86#return; {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:15:53,016 INFO L290 TraceCheckUtils]: 27: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:53,016 INFO L290 TraceCheckUtils]: 26: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:53,016 INFO L290 TraceCheckUtils]: 25: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:53,016 INFO L272 TraceCheckUtils]: 24: Hoare triple {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:53,017 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8917#true} {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #84#return; {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:15:53,017 INFO L290 TraceCheckUtils]: 22: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:53,017 INFO L290 TraceCheckUtils]: 21: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:53,017 INFO L290 TraceCheckUtils]: 20: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:53,017 INFO L272 TraceCheckUtils]: 19: Hoare triple {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:53,019 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {8917#true} {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #82#return; {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:15:53,019 INFO L290 TraceCheckUtils]: 17: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:53,019 INFO L290 TraceCheckUtils]: 16: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:53,019 INFO L290 TraceCheckUtils]: 15: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:53,019 INFO L272 TraceCheckUtils]: 14: Hoare triple {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:53,019 INFO L290 TraceCheckUtils]: 13: Hoare triple {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} assume !!(#t~post6 < 10);havoc #t~post6; {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:15:53,020 INFO L290 TraceCheckUtils]: 12: Hoare triple {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:15:53,020 INFO L290 TraceCheckUtils]: 11: Hoare triple {8917#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:15:53,020 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8917#true} {8917#true} #80#return; {8917#true} is VALID [2022-04-15 09:15:53,020 INFO L290 TraceCheckUtils]: 9: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:53,020 INFO L290 TraceCheckUtils]: 8: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-15 09:15:53,020 INFO L290 TraceCheckUtils]: 7: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-15 09:15:53,020 INFO L272 TraceCheckUtils]: 6: Hoare triple {8917#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {8917#true} is VALID [2022-04-15 09:15:53,020 INFO L290 TraceCheckUtils]: 5: Hoare triple {8917#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {8917#true} is VALID [2022-04-15 09:15:53,020 INFO L272 TraceCheckUtils]: 4: Hoare triple {8917#true} call #t~ret8 := main(); {8917#true} is VALID [2022-04-15 09:15:53,020 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8917#true} {8917#true} #96#return; {8917#true} is VALID [2022-04-15 09:15:53,021 INFO L290 TraceCheckUtils]: 2: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-15 09:15:53,021 INFO L290 TraceCheckUtils]: 1: Hoare triple {8917#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8917#true} is VALID [2022-04-15 09:15:53,021 INFO L272 TraceCheckUtils]: 0: Hoare triple {8917#true} call ULTIMATE.init(); {8917#true} is VALID [2022-04-15 09:15:53,021 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 18 proven. 10 refuted. 0 times theorem prover too weak. 144 trivial. 0 not checked. [2022-04-15 09:15:53,021 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:15:53,021 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1059761376] [2022-04-15 09:15:53,021 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:15:53,021 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [406927692] [2022-04-15 09:15:53,021 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [406927692] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:15:53,021 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:15:53,021 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 12 [2022-04-15 09:15:53,022 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:15:53,022 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [309066421] [2022-04-15 09:15:53,022 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [309066421] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:15:53,022 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:15:53,022 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 09:15:53,022 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [104960616] [2022-04-15 09:15:53,022 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:15:53,022 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 73 [2022-04-15 09:15:53,022 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:15:53,022 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 09:15:53,064 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:15:53,065 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 09:15:53,065 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:15:53,065 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 09:15:53,065 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-15 09:15:53,065 INFO L87 Difference]: Start difference. First operand 141 states and 162 transitions. Second operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 09:15:53,922 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:15:53,922 INFO L93 Difference]: Finished difference Result 168 states and 197 transitions. [2022-04-15 09:15:53,923 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 09:15:53,923 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 73 [2022-04-15 09:15:53,923 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:15:53,923 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 09:15:53,924 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 103 transitions. [2022-04-15 09:15:53,924 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 09:15:53,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 103 transitions. [2022-04-15 09:15:53,926 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 103 transitions. [2022-04-15 09:15:54,056 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:15:54,058 INFO L225 Difference]: With dead ends: 168 [2022-04-15 09:15:54,059 INFO L226 Difference]: Without dead ends: 143 [2022-04-15 09:15:54,060 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 147 GetRequests, 134 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=48, Invalid=134, Unknown=0, NotChecked=0, Total=182 [2022-04-15 09:15:54,062 INFO L913 BasicCegarLoop]: 55 mSDtfsCounter, 12 mSDsluCounter, 205 mSDsCounter, 0 mSdLazyCounter, 171 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 260 SdHoareTripleChecker+Invalid, 180 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 171 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 09:15:54,062 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 260 Invalid, 180 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 171 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 09:15:54,062 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 143 states. [2022-04-15 09:15:54,166 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 143 to 143. [2022-04-15 09:15:54,166 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:15:54,166 INFO L82 GeneralOperation]: Start isEquivalent. First operand 143 states. Second operand has 143 states, 93 states have (on average 1.1290322580645162) internal successors, (105), 97 states have internal predecessors, (105), 29 states have call successors, (29), 21 states have call predecessors, (29), 20 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 09:15:54,167 INFO L74 IsIncluded]: Start isIncluded. First operand 143 states. Second operand has 143 states, 93 states have (on average 1.1290322580645162) internal successors, (105), 97 states have internal predecessors, (105), 29 states have call successors, (29), 21 states have call predecessors, (29), 20 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 09:15:54,167 INFO L87 Difference]: Start difference. First operand 143 states. Second operand has 143 states, 93 states have (on average 1.1290322580645162) internal successors, (105), 97 states have internal predecessors, (105), 29 states have call successors, (29), 21 states have call predecessors, (29), 20 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 09:15:54,170 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:15:54,170 INFO L93 Difference]: Finished difference Result 143 states and 160 transitions. [2022-04-15 09:15:54,170 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 160 transitions. [2022-04-15 09:15:54,172 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:15:54,172 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:15:54,172 INFO L74 IsIncluded]: Start isIncluded. First operand has 143 states, 93 states have (on average 1.1290322580645162) internal successors, (105), 97 states have internal predecessors, (105), 29 states have call successors, (29), 21 states have call predecessors, (29), 20 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) Second operand 143 states. [2022-04-15 09:15:54,172 INFO L87 Difference]: Start difference. First operand has 143 states, 93 states have (on average 1.1290322580645162) internal successors, (105), 97 states have internal predecessors, (105), 29 states have call successors, (29), 21 states have call predecessors, (29), 20 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) Second operand 143 states. [2022-04-15 09:15:54,176 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:15:54,176 INFO L93 Difference]: Finished difference Result 143 states and 160 transitions. [2022-04-15 09:15:54,176 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 160 transitions. [2022-04-15 09:15:54,179 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:15:54,179 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:15:54,179 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:15:54,179 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:15:54,179 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 143 states, 93 states have (on average 1.1290322580645162) internal successors, (105), 97 states have internal predecessors, (105), 29 states have call successors, (29), 21 states have call predecessors, (29), 20 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 09:15:54,181 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 143 states to 143 states and 160 transitions. [2022-04-15 09:15:54,181 INFO L78 Accepts]: Start accepts. Automaton has 143 states and 160 transitions. Word has length 73 [2022-04-15 09:15:54,182 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:15:54,182 INFO L478 AbstractCegarLoop]: Abstraction has 143 states and 160 transitions. [2022-04-15 09:15:54,182 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 09:15:54,182 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 143 states and 160 transitions. [2022-04-15 09:15:54,439 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 160 edges. 160 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:15:54,439 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 160 transitions. [2022-04-15 09:15:54,440 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-15 09:15:54,440 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:15:54,440 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:15:54,479 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-15 09:15:54,656 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-04-15 09:15:54,656 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:15:54,657 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:15:54,657 INFO L85 PathProgramCache]: Analyzing trace with hash 1792978632, now seen corresponding path program 1 times [2022-04-15 09:15:54,658 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:15:54,658 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2132019549] [2022-04-15 09:16:00,419 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:16:00,419 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:16:00,419 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:16:00,419 INFO L85 PathProgramCache]: Analyzing trace with hash 1792978632, now seen corresponding path program 2 times [2022-04-15 09:16:00,419 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:16:00,419 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [94292868] [2022-04-15 09:16:00,419 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:16:00,420 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:16:00,433 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:16:00,433 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1777978545] [2022-04-15 09:16:00,433 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:16:00,433 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:16:00,433 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:16:00,444 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:16:00,445 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-15 09:16:00,570 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:16:00,571 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:16:00,572 INFO L263 TraceCheckSpWp]: Trace formula consists of 205 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-15 09:16:00,585 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:16:00,586 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:16:26,946 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 09:16:29,913 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 09:16:45,683 INFO L272 TraceCheckUtils]: 0: Hoare triple {10278#true} call ULTIMATE.init(); {10278#true} is VALID [2022-04-15 09:16:45,683 INFO L290 TraceCheckUtils]: 1: Hoare triple {10278#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {10278#true} is VALID [2022-04-15 09:16:45,683 INFO L290 TraceCheckUtils]: 2: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:16:45,683 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10278#true} {10278#true} #96#return; {10278#true} is VALID [2022-04-15 09:16:45,683 INFO L272 TraceCheckUtils]: 4: Hoare triple {10278#true} call #t~ret8 := main(); {10278#true} is VALID [2022-04-15 09:16:45,684 INFO L290 TraceCheckUtils]: 5: Hoare triple {10278#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {10278#true} is VALID [2022-04-15 09:16:45,684 INFO L272 TraceCheckUtils]: 6: Hoare triple {10278#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:16:45,684 INFO L290 TraceCheckUtils]: 7: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:16:45,684 INFO L290 TraceCheckUtils]: 8: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:16:45,684 INFO L290 TraceCheckUtils]: 9: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:16:45,684 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10278#true} {10278#true} #80#return; {10278#true} is VALID [2022-04-15 09:16:45,685 INFO L290 TraceCheckUtils]: 11: Hoare triple {10278#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,685 INFO L290 TraceCheckUtils]: 12: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,685 INFO L290 TraceCheckUtils]: 13: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !!(#t~post6 < 10);havoc #t~post6; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,685 INFO L272 TraceCheckUtils]: 14: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:16:45,685 INFO L290 TraceCheckUtils]: 15: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:16:45,685 INFO L290 TraceCheckUtils]: 16: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:16:45,685 INFO L290 TraceCheckUtils]: 17: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:16:45,686 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {10278#true} {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #82#return; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,686 INFO L272 TraceCheckUtils]: 19: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:16:45,686 INFO L290 TraceCheckUtils]: 20: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:16:45,686 INFO L290 TraceCheckUtils]: 21: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:16:45,686 INFO L290 TraceCheckUtils]: 22: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:16:45,686 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10278#true} {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #84#return; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,686 INFO L272 TraceCheckUtils]: 24: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:16:45,686 INFO L290 TraceCheckUtils]: 25: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:16:45,687 INFO L290 TraceCheckUtils]: 26: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:16:45,687 INFO L290 TraceCheckUtils]: 27: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:16:45,687 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {10278#true} {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #86#return; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,687 INFO L290 TraceCheckUtils]: 29: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,688 INFO L290 TraceCheckUtils]: 30: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,688 INFO L290 TraceCheckUtils]: 31: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !!(#t~post6 < 10);havoc #t~post6; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,688 INFO L272 TraceCheckUtils]: 32: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:16:45,688 INFO L290 TraceCheckUtils]: 33: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:16:45,688 INFO L290 TraceCheckUtils]: 34: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:16:45,688 INFO L290 TraceCheckUtils]: 35: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:16:45,689 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {10278#true} {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #82#return; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,689 INFO L272 TraceCheckUtils]: 37: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:16:45,689 INFO L290 TraceCheckUtils]: 38: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:16:45,689 INFO L290 TraceCheckUtils]: 39: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:16:45,689 INFO L290 TraceCheckUtils]: 40: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:16:45,689 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {10278#true} {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #84#return; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,689 INFO L272 TraceCheckUtils]: 42: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:16:45,689 INFO L290 TraceCheckUtils]: 43: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:16:45,689 INFO L290 TraceCheckUtils]: 44: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:16:45,689 INFO L290 TraceCheckUtils]: 45: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:16:45,690 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {10278#true} {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #86#return; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,690 INFO L290 TraceCheckUtils]: 47: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !(~r~0 >= ~d~0); {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,691 INFO L290 TraceCheckUtils]: 48: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,691 INFO L290 TraceCheckUtils]: 49: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !!(#t~post7 < 10);havoc #t~post7; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,691 INFO L272 TraceCheckUtils]: 50: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:16:45,691 INFO L290 TraceCheckUtils]: 51: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:16:45,691 INFO L290 TraceCheckUtils]: 52: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:16:45,691 INFO L290 TraceCheckUtils]: 53: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:16:45,691 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {10278#true} {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #88#return; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,692 INFO L272 TraceCheckUtils]: 55: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:16:45,692 INFO L290 TraceCheckUtils]: 56: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:16:45,692 INFO L290 TraceCheckUtils]: 57: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:16:45,692 INFO L290 TraceCheckUtils]: 58: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:16:45,692 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10278#true} {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #90#return; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,693 INFO L290 TraceCheckUtils]: 60: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:16:45,693 INFO L290 TraceCheckUtils]: 61: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {10467#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-15 09:16:45,694 INFO L290 TraceCheckUtils]: 62: Hoare triple {10467#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10467#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-15 09:16:45,694 INFO L290 TraceCheckUtils]: 63: Hoare triple {10467#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} assume !!(#t~post7 < 10);havoc #t~post7; {10467#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-15 09:16:45,694 INFO L272 TraceCheckUtils]: 64: Hoare triple {10467#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:16:45,694 INFO L290 TraceCheckUtils]: 65: Hoare triple {10278#true} ~cond := #in~cond; {10480#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:16:45,695 INFO L290 TraceCheckUtils]: 66: Hoare triple {10480#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:16:45,695 INFO L290 TraceCheckUtils]: 67: Hoare triple {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:16:45,695 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} {10467#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} #88#return; {10491#(and (= main_~q~0 main_~p~0) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-15 09:16:45,696 INFO L272 TraceCheckUtils]: 69: Hoare triple {10491#(and (= main_~q~0 main_~p~0) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:16:45,696 INFO L290 TraceCheckUtils]: 70: Hoare triple {10278#true} ~cond := #in~cond; {10480#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:16:45,696 INFO L290 TraceCheckUtils]: 71: Hoare triple {10480#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:16:45,696 INFO L290 TraceCheckUtils]: 72: Hoare triple {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:16:47,701 WARN L284 TraceCheckUtils]: 73: Hoare quadruple {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} {10491#(and (= main_~q~0 main_~p~0) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} #90#return; {10507#(and (or (and (= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 0) (= main_~q~0 0) (exists ((aux_div_aux_mod_main_~B~0_26_37 Int) (aux_mod_aux_mod_main_~B~0_26_37 Int)) (and (< (+ (* 4294967296 aux_div_aux_mod_main_~B~0_26_37) aux_mod_aux_mod_main_~B~0_26_37) 4294967296) (<= 0 aux_mod_aux_mod_main_~B~0_26_37) (<= 0 (+ (* 4294967296 aux_div_aux_mod_main_~B~0_26_37) aux_mod_aux_mod_main_~B~0_26_37)) (< aux_mod_aux_mod_main_~B~0_26_37 4294967296) (= (* main_~p~0 (+ (* 4294967296 aux_div_aux_mod_main_~B~0_26_37) aux_mod_aux_mod_main_~B~0_26_37)) main_~d~0)))) (and (<= 0 (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0)) (= (mod (div (+ main_~d~0 (* (- 1) (* (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~p~0))) 4294967296) main_~p~0) 0) (<= 0 (+ (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) (* 4294967296 (div (div (+ (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~p~0) main_~d~0) 4294967296) main_~p~0)))) (< (+ (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) (* 4294967296 (div (div (+ (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~p~0) main_~d~0) 4294967296) main_~p~0))) 4294967296) (not (= main_~q~0 0)) (< (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) 4294967296) (= (mod (+ (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~p~0) main_~d~0) 4294967296) 0))) (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} is UNKNOWN [2022-04-15 09:16:47,703 INFO L290 TraceCheckUtils]: 74: Hoare triple {10507#(and (or (and (= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 0) (= main_~q~0 0) (exists ((aux_div_aux_mod_main_~B~0_26_37 Int) (aux_mod_aux_mod_main_~B~0_26_37 Int)) (and (< (+ (* 4294967296 aux_div_aux_mod_main_~B~0_26_37) aux_mod_aux_mod_main_~B~0_26_37) 4294967296) (<= 0 aux_mod_aux_mod_main_~B~0_26_37) (<= 0 (+ (* 4294967296 aux_div_aux_mod_main_~B~0_26_37) aux_mod_aux_mod_main_~B~0_26_37)) (< aux_mod_aux_mod_main_~B~0_26_37 4294967296) (= (* main_~p~0 (+ (* 4294967296 aux_div_aux_mod_main_~B~0_26_37) aux_mod_aux_mod_main_~B~0_26_37)) main_~d~0)))) (and (<= 0 (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0)) (= (mod (div (+ main_~d~0 (* (- 1) (* (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~p~0))) 4294967296) main_~p~0) 0) (<= 0 (+ (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) (* 4294967296 (div (div (+ (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~p~0) main_~d~0) 4294967296) main_~p~0)))) (< (+ (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) (* 4294967296 (div (div (+ (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~p~0) main_~d~0) 4294967296) main_~p~0))) 4294967296) (not (= main_~q~0 0)) (< (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) 4294967296) (= (mod (+ (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~p~0) main_~d~0) 4294967296) 0))) (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} assume !(1 != ~p~0); {10511#(and (< (+ (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) (* 4294967296 (div (div (+ main_~d~0 (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~q~0)) 4294967296) main_~q~0))) 4294967296) (= (mod (+ main_~d~0 (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~q~0)) 4294967296) 0) (<= 0 (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0)) (= main_~q~0 1) (< (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) 4294967296) (<= 0 (+ (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) (* 4294967296 (div (div (+ main_~d~0 (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~q~0)) 4294967296) main_~q~0)))))} is VALID [2022-04-15 09:16:47,706 INFO L272 TraceCheckUtils]: 75: Hoare triple {10511#(and (< (+ (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) (* 4294967296 (div (div (+ main_~d~0 (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~q~0)) 4294967296) main_~q~0))) 4294967296) (= (mod (+ main_~d~0 (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~q~0)) 4294967296) 0) (<= 0 (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0)) (= main_~q~0 1) (< (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) 4294967296) (<= 0 (+ (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) (* 4294967296 (div (div (+ main_~d~0 (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~q~0)) 4294967296) main_~q~0)))))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {10515#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:16:47,719 INFO L290 TraceCheckUtils]: 76: Hoare triple {10515#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10519#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:16:47,720 INFO L290 TraceCheckUtils]: 77: Hoare triple {10519#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10279#false} is VALID [2022-04-15 09:16:47,720 INFO L290 TraceCheckUtils]: 78: Hoare triple {10279#false} assume !false; {10279#false} is VALID [2022-04-15 09:16:47,720 INFO L134 CoverageAnalysis]: Checked inductivity of 211 backedges. 66 proven. 7 refuted. 0 times theorem prover too weak. 138 trivial. 0 not checked. [2022-04-15 09:16:47,720 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:17:34,985 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 09:17:39,396 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 09:18:03,650 INFO L290 TraceCheckUtils]: 78: Hoare triple {10279#false} assume !false; {10279#false} is VALID [2022-04-15 09:18:03,650 INFO L290 TraceCheckUtils]: 77: Hoare triple {10519#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10279#false} is VALID [2022-04-15 09:18:03,650 INFO L290 TraceCheckUtils]: 76: Hoare triple {10515#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10519#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:18:03,651 INFO L272 TraceCheckUtils]: 75: Hoare triple {10535#(= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {10515#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:18:03,651 INFO L290 TraceCheckUtils]: 74: Hoare triple {10539#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~p~0 1)))} assume !(1 != ~p~0); {10535#(= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0))} is VALID [2022-04-15 09:18:03,652 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} {10543#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (not (= main_~p~0 1)))} #90#return; {10539#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~p~0 1)))} is VALID [2022-04-15 09:18:03,652 INFO L290 TraceCheckUtils]: 72: Hoare triple {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:18:03,653 INFO L290 TraceCheckUtils]: 71: Hoare triple {10553#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:18:03,653 INFO L290 TraceCheckUtils]: 70: Hoare triple {10278#true} ~cond := #in~cond; {10553#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:18:03,653 INFO L272 TraceCheckUtils]: 69: Hoare triple {10543#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (not (= main_~p~0 1)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:18:03,655 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} {10278#true} #88#return; {10543#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (not (= main_~p~0 1)))} is VALID [2022-04-15 09:18:03,655 INFO L290 TraceCheckUtils]: 67: Hoare triple {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:18:03,655 INFO L290 TraceCheckUtils]: 66: Hoare triple {10553#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:18:03,656 INFO L290 TraceCheckUtils]: 65: Hoare triple {10278#true} ~cond := #in~cond; {10553#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:18:03,656 INFO L272 TraceCheckUtils]: 64: Hoare triple {10278#true} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:18:03,656 INFO L290 TraceCheckUtils]: 63: Hoare triple {10278#true} assume !!(#t~post7 < 10);havoc #t~post7; {10278#true} is VALID [2022-04-15 09:18:03,656 INFO L290 TraceCheckUtils]: 62: Hoare triple {10278#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10278#true} is VALID [2022-04-15 09:18:03,656 INFO L290 TraceCheckUtils]: 61: Hoare triple {10278#true} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {10278#true} is VALID [2022-04-15 09:18:03,656 INFO L290 TraceCheckUtils]: 60: Hoare triple {10278#true} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {10278#true} is VALID [2022-04-15 09:18:03,656 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10278#true} {10278#true} #90#return; {10278#true} is VALID [2022-04-15 09:18:03,656 INFO L290 TraceCheckUtils]: 58: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:18:03,656 INFO L290 TraceCheckUtils]: 57: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:18:03,656 INFO L290 TraceCheckUtils]: 56: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:18:03,656 INFO L272 TraceCheckUtils]: 55: Hoare triple {10278#true} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:18:03,656 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {10278#true} {10278#true} #88#return; {10278#true} is VALID [2022-04-15 09:18:03,656 INFO L290 TraceCheckUtils]: 53: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:18:03,656 INFO L290 TraceCheckUtils]: 52: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:18:03,656 INFO L290 TraceCheckUtils]: 51: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:18:03,656 INFO L272 TraceCheckUtils]: 50: Hoare triple {10278#true} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:18:03,656 INFO L290 TraceCheckUtils]: 49: Hoare triple {10278#true} assume !!(#t~post7 < 10);havoc #t~post7; {10278#true} is VALID [2022-04-15 09:18:03,656 INFO L290 TraceCheckUtils]: 48: Hoare triple {10278#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L290 TraceCheckUtils]: 47: Hoare triple {10278#true} assume !(~r~0 >= ~d~0); {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {10278#true} {10278#true} #86#return; {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L290 TraceCheckUtils]: 45: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L290 TraceCheckUtils]: 44: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L290 TraceCheckUtils]: 43: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L272 TraceCheckUtils]: 42: Hoare triple {10278#true} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {10278#true} {10278#true} #84#return; {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L290 TraceCheckUtils]: 40: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L290 TraceCheckUtils]: 39: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L290 TraceCheckUtils]: 38: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L272 TraceCheckUtils]: 37: Hoare triple {10278#true} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {10278#true} {10278#true} #82#return; {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L290 TraceCheckUtils]: 35: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L290 TraceCheckUtils]: 34: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L290 TraceCheckUtils]: 33: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L272 TraceCheckUtils]: 32: Hoare triple {10278#true} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L290 TraceCheckUtils]: 31: Hoare triple {10278#true} assume !!(#t~post6 < 10);havoc #t~post6; {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L290 TraceCheckUtils]: 30: Hoare triple {10278#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10278#true} is VALID [2022-04-15 09:18:03,657 INFO L290 TraceCheckUtils]: 29: Hoare triple {10278#true} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {10278#true} {10278#true} #86#return; {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L290 TraceCheckUtils]: 27: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L290 TraceCheckUtils]: 26: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L290 TraceCheckUtils]: 25: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L272 TraceCheckUtils]: 24: Hoare triple {10278#true} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10278#true} {10278#true} #84#return; {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L290 TraceCheckUtils]: 22: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L290 TraceCheckUtils]: 21: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L290 TraceCheckUtils]: 20: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L272 TraceCheckUtils]: 19: Hoare triple {10278#true} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {10278#true} {10278#true} #82#return; {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L290 TraceCheckUtils]: 17: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L290 TraceCheckUtils]: 16: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L290 TraceCheckUtils]: 15: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L272 TraceCheckUtils]: 14: Hoare triple {10278#true} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L290 TraceCheckUtils]: 13: Hoare triple {10278#true} assume !!(#t~post6 < 10);havoc #t~post6; {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L290 TraceCheckUtils]: 12: Hoare triple {10278#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L290 TraceCheckUtils]: 11: Hoare triple {10278#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10278#true} {10278#true} #80#return; {10278#true} is VALID [2022-04-15 09:18:03,658 INFO L290 TraceCheckUtils]: 9: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:18:03,659 INFO L290 TraceCheckUtils]: 8: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-15 09:18:03,659 INFO L290 TraceCheckUtils]: 7: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-15 09:18:03,659 INFO L272 TraceCheckUtils]: 6: Hoare triple {10278#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {10278#true} is VALID [2022-04-15 09:18:03,659 INFO L290 TraceCheckUtils]: 5: Hoare triple {10278#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {10278#true} is VALID [2022-04-15 09:18:03,659 INFO L272 TraceCheckUtils]: 4: Hoare triple {10278#true} call #t~ret8 := main(); {10278#true} is VALID [2022-04-15 09:18:03,659 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10278#true} {10278#true} #96#return; {10278#true} is VALID [2022-04-15 09:18:03,659 INFO L290 TraceCheckUtils]: 2: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-15 09:18:03,659 INFO L290 TraceCheckUtils]: 1: Hoare triple {10278#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {10278#true} is VALID [2022-04-15 09:18:03,659 INFO L272 TraceCheckUtils]: 0: Hoare triple {10278#true} call ULTIMATE.init(); {10278#true} is VALID [2022-04-15 09:18:03,659 INFO L134 CoverageAnalysis]: Checked inductivity of 211 backedges. 68 proven. 2 refuted. 0 times theorem prover too weak. 141 trivial. 0 not checked. [2022-04-15 09:18:03,659 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:18:03,659 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [94292868] [2022-04-15 09:18:03,659 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:18:03,659 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1777978545] [2022-04-15 09:18:03,660 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1777978545] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:18:03,660 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:18:03,660 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 9] total 15 [2022-04-15 09:18:03,660 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:18:03,660 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2132019549] [2022-04-15 09:18:03,660 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2132019549] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:03,660 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:03,660 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 09:18:03,660 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [873128190] [2022-04-15 09:18:03,660 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:18:03,660 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) Word has length 79 [2022-04-15 09:18:03,661 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:18:03,661 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-15 09:18:05,706 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 46 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:05,706 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 09:18:05,706 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:05,706 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 09:18:05,706 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=42, Invalid=168, Unknown=0, NotChecked=0, Total=210 [2022-04-15 09:18:05,706 INFO L87 Difference]: Start difference. First operand 143 states and 160 transitions. Second operand has 11 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-15 09:18:09,016 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 09:18:14,799 WARN L232 SmtUtils]: Spent 5.60s on a formula simplification. DAG size of input: 57 DAG size of output: 54 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-15 09:18:15,371 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:15,372 INFO L93 Difference]: Finished difference Result 159 states and 181 transitions. [2022-04-15 09:18:15,372 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-15 09:18:15,372 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) Word has length 79 [2022-04-15 09:18:15,372 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:18:15,372 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-15 09:18:15,375 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 76 transitions. [2022-04-15 09:18:15,375 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-15 09:18:15,376 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 76 transitions. [2022-04-15 09:18:15,376 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 76 transitions. [2022-04-15 09:18:17,465 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 75 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:17,467 INFO L225 Difference]: With dead ends: 159 [2022-04-15 09:18:17,467 INFO L226 Difference]: Without dead ends: 129 [2022-04-15 09:18:17,468 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 160 GetRequests, 143 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 34 ImplicationChecksByTransitivity, 6.6s TimeCoverageRelationStatistics Valid=62, Invalid=244, Unknown=0, NotChecked=0, Total=306 [2022-04-15 09:18:17,468 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 16 mSDsluCounter, 183 mSDsCounter, 0 mSdLazyCounter, 268 mSolverCounterSat, 2 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 221 SdHoareTripleChecker+Invalid, 276 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 268 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 5 IncrementalHoareTripleChecker+Unchecked, 2.7s IncrementalHoareTripleChecker+Time [2022-04-15 09:18:17,468 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [21 Valid, 221 Invalid, 276 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 268 Invalid, 1 Unknown, 5 Unchecked, 2.7s Time] [2022-04-15 09:18:17,469 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 129 states. [2022-04-15 09:18:17,570 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 129 to 125. [2022-04-15 09:18:17,570 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:18:17,571 INFO L82 GeneralOperation]: Start isEquivalent. First operand 129 states. Second operand has 125 states, 80 states have (on average 1.1625) internal successors, (93), 84 states have internal predecessors, (93), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:18:17,571 INFO L74 IsIncluded]: Start isIncluded. First operand 129 states. Second operand has 125 states, 80 states have (on average 1.1625) internal successors, (93), 84 states have internal predecessors, (93), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:18:17,571 INFO L87 Difference]: Start difference. First operand 129 states. Second operand has 125 states, 80 states have (on average 1.1625) internal successors, (93), 84 states have internal predecessors, (93), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:18:17,573 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:17,573 INFO L93 Difference]: Finished difference Result 129 states and 150 transitions. [2022-04-15 09:18:17,573 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 150 transitions. [2022-04-15 09:18:17,574 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:17,574 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:17,574 INFO L74 IsIncluded]: Start isIncluded. First operand has 125 states, 80 states have (on average 1.1625) internal successors, (93), 84 states have internal predecessors, (93), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) Second operand 129 states. [2022-04-15 09:18:17,574 INFO L87 Difference]: Start difference. First operand has 125 states, 80 states have (on average 1.1625) internal successors, (93), 84 states have internal predecessors, (93), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) Second operand 129 states. [2022-04-15 09:18:17,576 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:17,576 INFO L93 Difference]: Finished difference Result 129 states and 150 transitions. [2022-04-15 09:18:17,576 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 150 transitions. [2022-04-15 09:18:17,576 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:17,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:17,576 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:18:17,576 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:18:17,577 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 125 states, 80 states have (on average 1.1625) internal successors, (93), 84 states have internal predecessors, (93), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:18:17,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 125 states to 125 states and 145 transitions. [2022-04-15 09:18:17,579 INFO L78 Accepts]: Start accepts. Automaton has 125 states and 145 transitions. Word has length 79 [2022-04-15 09:18:17,579 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:18:17,579 INFO L478 AbstractCegarLoop]: Abstraction has 125 states and 145 transitions. [2022-04-15 09:18:17,579 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-15 09:18:17,579 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 125 states and 145 transitions. [2022-04-15 09:18:19,740 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 145 edges. 144 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:19,740 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 145 transitions. [2022-04-15 09:18:19,741 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-15 09:18:19,741 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:18:19,741 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 4, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:18:19,756 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-15 09:18:19,941 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable14 [2022-04-15 09:18:19,941 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:18:19,942 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:18:19,942 INFO L85 PathProgramCache]: Analyzing trace with hash 816704307, now seen corresponding path program 5 times [2022-04-15 09:18:19,942 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:19,942 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [331044849] [2022-04-15 09:18:27,403 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:18:27,403 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:18:27,403 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:18:27,404 INFO L85 PathProgramCache]: Analyzing trace with hash 816704307, now seen corresponding path program 6 times [2022-04-15 09:18:27,404 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:18:27,404 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [703038492] [2022-04-15 09:18:27,404 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:18:27,404 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:18:27,412 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:18:27,412 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [432938131] [2022-04-15 09:18:27,412 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 09:18:27,412 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:18:27,412 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:18:27,413 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:18:27,413 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-15 09:18:27,460 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-04-15 09:18:27,460 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:18:27,461 INFO L263 TraceCheckSpWp]: Trace formula consists of 207 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-15 09:18:27,473 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:27,474 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:18:27,771 INFO L272 TraceCheckUtils]: 0: Hoare triple {11598#true} call ULTIMATE.init(); {11598#true} is VALID [2022-04-15 09:18:27,772 INFO L290 TraceCheckUtils]: 1: Hoare triple {11598#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {11606#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:27,772 INFO L290 TraceCheckUtils]: 2: Hoare triple {11606#(<= ~counter~0 0)} assume true; {11606#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:27,772 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11606#(<= ~counter~0 0)} {11598#true} #96#return; {11606#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:27,773 INFO L272 TraceCheckUtils]: 4: Hoare triple {11606#(<= ~counter~0 0)} call #t~ret8 := main(); {11606#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:27,773 INFO L290 TraceCheckUtils]: 5: Hoare triple {11606#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {11606#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:27,773 INFO L272 TraceCheckUtils]: 6: Hoare triple {11606#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {11606#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:27,773 INFO L290 TraceCheckUtils]: 7: Hoare triple {11606#(<= ~counter~0 0)} ~cond := #in~cond; {11606#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:27,774 INFO L290 TraceCheckUtils]: 8: Hoare triple {11606#(<= ~counter~0 0)} assume !(0 == ~cond); {11606#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:27,774 INFO L290 TraceCheckUtils]: 9: Hoare triple {11606#(<= ~counter~0 0)} assume true; {11606#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:27,774 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11606#(<= ~counter~0 0)} {11606#(<= ~counter~0 0)} #80#return; {11606#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:27,775 INFO L290 TraceCheckUtils]: 11: Hoare triple {11606#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {11606#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:27,775 INFO L290 TraceCheckUtils]: 12: Hoare triple {11606#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,775 INFO L290 TraceCheckUtils]: 13: Hoare triple {11640#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,776 INFO L272 TraceCheckUtils]: 14: Hoare triple {11640#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,776 INFO L290 TraceCheckUtils]: 15: Hoare triple {11640#(<= ~counter~0 1)} ~cond := #in~cond; {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,776 INFO L290 TraceCheckUtils]: 16: Hoare triple {11640#(<= ~counter~0 1)} assume !(0 == ~cond); {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,776 INFO L290 TraceCheckUtils]: 17: Hoare triple {11640#(<= ~counter~0 1)} assume true; {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,777 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {11640#(<= ~counter~0 1)} {11640#(<= ~counter~0 1)} #82#return; {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,777 INFO L272 TraceCheckUtils]: 19: Hoare triple {11640#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,778 INFO L290 TraceCheckUtils]: 20: Hoare triple {11640#(<= ~counter~0 1)} ~cond := #in~cond; {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,778 INFO L290 TraceCheckUtils]: 21: Hoare triple {11640#(<= ~counter~0 1)} assume !(0 == ~cond); {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,778 INFO L290 TraceCheckUtils]: 22: Hoare triple {11640#(<= ~counter~0 1)} assume true; {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,778 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11640#(<= ~counter~0 1)} {11640#(<= ~counter~0 1)} #84#return; {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,779 INFO L272 TraceCheckUtils]: 24: Hoare triple {11640#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,779 INFO L290 TraceCheckUtils]: 25: Hoare triple {11640#(<= ~counter~0 1)} ~cond := #in~cond; {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,779 INFO L290 TraceCheckUtils]: 26: Hoare triple {11640#(<= ~counter~0 1)} assume !(0 == ~cond); {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,780 INFO L290 TraceCheckUtils]: 27: Hoare triple {11640#(<= ~counter~0 1)} assume true; {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,780 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {11640#(<= ~counter~0 1)} {11640#(<= ~counter~0 1)} #86#return; {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,780 INFO L290 TraceCheckUtils]: 29: Hoare triple {11640#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11640#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:27,781 INFO L290 TraceCheckUtils]: 30: Hoare triple {11640#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,781 INFO L290 TraceCheckUtils]: 31: Hoare triple {11695#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,781 INFO L272 TraceCheckUtils]: 32: Hoare triple {11695#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,782 INFO L290 TraceCheckUtils]: 33: Hoare triple {11695#(<= ~counter~0 2)} ~cond := #in~cond; {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,782 INFO L290 TraceCheckUtils]: 34: Hoare triple {11695#(<= ~counter~0 2)} assume !(0 == ~cond); {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,782 INFO L290 TraceCheckUtils]: 35: Hoare triple {11695#(<= ~counter~0 2)} assume true; {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,782 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11695#(<= ~counter~0 2)} {11695#(<= ~counter~0 2)} #82#return; {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,783 INFO L272 TraceCheckUtils]: 37: Hoare triple {11695#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,783 INFO L290 TraceCheckUtils]: 38: Hoare triple {11695#(<= ~counter~0 2)} ~cond := #in~cond; {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,783 INFO L290 TraceCheckUtils]: 39: Hoare triple {11695#(<= ~counter~0 2)} assume !(0 == ~cond); {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,784 INFO L290 TraceCheckUtils]: 40: Hoare triple {11695#(<= ~counter~0 2)} assume true; {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,784 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11695#(<= ~counter~0 2)} {11695#(<= ~counter~0 2)} #84#return; {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,784 INFO L272 TraceCheckUtils]: 42: Hoare triple {11695#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,785 INFO L290 TraceCheckUtils]: 43: Hoare triple {11695#(<= ~counter~0 2)} ~cond := #in~cond; {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,785 INFO L290 TraceCheckUtils]: 44: Hoare triple {11695#(<= ~counter~0 2)} assume !(0 == ~cond); {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,785 INFO L290 TraceCheckUtils]: 45: Hoare triple {11695#(<= ~counter~0 2)} assume true; {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,786 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {11695#(<= ~counter~0 2)} {11695#(<= ~counter~0 2)} #86#return; {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,786 INFO L290 TraceCheckUtils]: 47: Hoare triple {11695#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11695#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:27,786 INFO L290 TraceCheckUtils]: 48: Hoare triple {11695#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,787 INFO L290 TraceCheckUtils]: 49: Hoare triple {11750#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,787 INFO L272 TraceCheckUtils]: 50: Hoare triple {11750#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,787 INFO L290 TraceCheckUtils]: 51: Hoare triple {11750#(<= ~counter~0 3)} ~cond := #in~cond; {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,787 INFO L290 TraceCheckUtils]: 52: Hoare triple {11750#(<= ~counter~0 3)} assume !(0 == ~cond); {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,788 INFO L290 TraceCheckUtils]: 53: Hoare triple {11750#(<= ~counter~0 3)} assume true; {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,788 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {11750#(<= ~counter~0 3)} {11750#(<= ~counter~0 3)} #82#return; {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,788 INFO L272 TraceCheckUtils]: 55: Hoare triple {11750#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,789 INFO L290 TraceCheckUtils]: 56: Hoare triple {11750#(<= ~counter~0 3)} ~cond := #in~cond; {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,789 INFO L290 TraceCheckUtils]: 57: Hoare triple {11750#(<= ~counter~0 3)} assume !(0 == ~cond); {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,789 INFO L290 TraceCheckUtils]: 58: Hoare triple {11750#(<= ~counter~0 3)} assume true; {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,790 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {11750#(<= ~counter~0 3)} {11750#(<= ~counter~0 3)} #84#return; {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,790 INFO L272 TraceCheckUtils]: 60: Hoare triple {11750#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,790 INFO L290 TraceCheckUtils]: 61: Hoare triple {11750#(<= ~counter~0 3)} ~cond := #in~cond; {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,791 INFO L290 TraceCheckUtils]: 62: Hoare triple {11750#(<= ~counter~0 3)} assume !(0 == ~cond); {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,791 INFO L290 TraceCheckUtils]: 63: Hoare triple {11750#(<= ~counter~0 3)} assume true; {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,791 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {11750#(<= ~counter~0 3)} {11750#(<= ~counter~0 3)} #86#return; {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,791 INFO L290 TraceCheckUtils]: 65: Hoare triple {11750#(<= ~counter~0 3)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11750#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:27,792 INFO L290 TraceCheckUtils]: 66: Hoare triple {11750#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11805#(<= |main_#t~post6| 3)} is VALID [2022-04-15 09:18:27,792 INFO L290 TraceCheckUtils]: 67: Hoare triple {11805#(<= |main_#t~post6| 3)} assume !(#t~post6 < 10);havoc #t~post6; {11599#false} is VALID [2022-04-15 09:18:27,792 INFO L290 TraceCheckUtils]: 68: Hoare triple {11599#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11599#false} is VALID [2022-04-15 09:18:27,792 INFO L290 TraceCheckUtils]: 69: Hoare triple {11599#false} assume !(#t~post7 < 10);havoc #t~post7; {11599#false} is VALID [2022-04-15 09:18:27,792 INFO L272 TraceCheckUtils]: 70: Hoare triple {11599#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {11599#false} is VALID [2022-04-15 09:18:27,792 INFO L290 TraceCheckUtils]: 71: Hoare triple {11599#false} ~cond := #in~cond; {11599#false} is VALID [2022-04-15 09:18:27,792 INFO L290 TraceCheckUtils]: 72: Hoare triple {11599#false} assume !(0 == ~cond); {11599#false} is VALID [2022-04-15 09:18:27,792 INFO L290 TraceCheckUtils]: 73: Hoare triple {11599#false} assume true; {11599#false} is VALID [2022-04-15 09:18:27,793 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {11599#false} {11599#false} #92#return; {11599#false} is VALID [2022-04-15 09:18:27,793 INFO L272 TraceCheckUtils]: 75: Hoare triple {11599#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {11599#false} is VALID [2022-04-15 09:18:27,793 INFO L290 TraceCheckUtils]: 76: Hoare triple {11599#false} ~cond := #in~cond; {11599#false} is VALID [2022-04-15 09:18:27,793 INFO L290 TraceCheckUtils]: 77: Hoare triple {11599#false} assume 0 == ~cond; {11599#false} is VALID [2022-04-15 09:18:27,793 INFO L290 TraceCheckUtils]: 78: Hoare triple {11599#false} assume !false; {11599#false} is VALID [2022-04-15 09:18:27,793 INFO L134 CoverageAnalysis]: Checked inductivity of 224 backedges. 54 proven. 132 refuted. 0 times theorem prover too weak. 38 trivial. 0 not checked. [2022-04-15 09:18:27,793 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:18:28,087 INFO L290 TraceCheckUtils]: 78: Hoare triple {11599#false} assume !false; {11599#false} is VALID [2022-04-15 09:18:28,087 INFO L290 TraceCheckUtils]: 77: Hoare triple {11599#false} assume 0 == ~cond; {11599#false} is VALID [2022-04-15 09:18:28,087 INFO L290 TraceCheckUtils]: 76: Hoare triple {11599#false} ~cond := #in~cond; {11599#false} is VALID [2022-04-15 09:18:28,087 INFO L272 TraceCheckUtils]: 75: Hoare triple {11599#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {11599#false} is VALID [2022-04-15 09:18:28,087 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {11598#true} {11599#false} #92#return; {11599#false} is VALID [2022-04-15 09:18:28,087 INFO L290 TraceCheckUtils]: 73: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-15 09:18:28,087 INFO L290 TraceCheckUtils]: 72: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-15 09:18:28,087 INFO L290 TraceCheckUtils]: 71: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-15 09:18:28,087 INFO L272 TraceCheckUtils]: 70: Hoare triple {11599#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {11598#true} is VALID [2022-04-15 09:18:28,087 INFO L290 TraceCheckUtils]: 69: Hoare triple {11599#false} assume !(#t~post7 < 10);havoc #t~post7; {11599#false} is VALID [2022-04-15 09:18:28,088 INFO L290 TraceCheckUtils]: 68: Hoare triple {11599#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11599#false} is VALID [2022-04-15 09:18:28,088 INFO L290 TraceCheckUtils]: 67: Hoare triple {11875#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {11599#false} is VALID [2022-04-15 09:18:28,088 INFO L290 TraceCheckUtils]: 66: Hoare triple {11879#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11875#(< |main_#t~post6| 10)} is VALID [2022-04-15 09:18:28,088 INFO L290 TraceCheckUtils]: 65: Hoare triple {11879#(< ~counter~0 10)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11879#(< ~counter~0 10)} is VALID [2022-04-15 09:18:28,089 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {11598#true} {11879#(< ~counter~0 10)} #86#return; {11879#(< ~counter~0 10)} is VALID [2022-04-15 09:18:28,089 INFO L290 TraceCheckUtils]: 63: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-15 09:18:28,089 INFO L290 TraceCheckUtils]: 62: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-15 09:18:28,089 INFO L290 TraceCheckUtils]: 61: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-15 09:18:28,089 INFO L272 TraceCheckUtils]: 60: Hoare triple {11879#(< ~counter~0 10)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11598#true} is VALID [2022-04-15 09:18:28,089 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {11598#true} {11879#(< ~counter~0 10)} #84#return; {11879#(< ~counter~0 10)} is VALID [2022-04-15 09:18:28,089 INFO L290 TraceCheckUtils]: 58: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-15 09:18:28,090 INFO L290 TraceCheckUtils]: 57: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-15 09:18:28,090 INFO L290 TraceCheckUtils]: 56: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-15 09:18:28,090 INFO L272 TraceCheckUtils]: 55: Hoare triple {11879#(< ~counter~0 10)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11598#true} is VALID [2022-04-15 09:18:28,090 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {11598#true} {11879#(< ~counter~0 10)} #82#return; {11879#(< ~counter~0 10)} is VALID [2022-04-15 09:18:28,090 INFO L290 TraceCheckUtils]: 53: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-15 09:18:28,090 INFO L290 TraceCheckUtils]: 52: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-15 09:18:28,090 INFO L290 TraceCheckUtils]: 51: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-15 09:18:28,090 INFO L272 TraceCheckUtils]: 50: Hoare triple {11879#(< ~counter~0 10)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11598#true} is VALID [2022-04-15 09:18:28,090 INFO L290 TraceCheckUtils]: 49: Hoare triple {11879#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {11879#(< ~counter~0 10)} is VALID [2022-04-15 09:18:28,091 INFO L290 TraceCheckUtils]: 48: Hoare triple {11934#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11879#(< ~counter~0 10)} is VALID [2022-04-15 09:18:28,091 INFO L290 TraceCheckUtils]: 47: Hoare triple {11934#(< ~counter~0 9)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11934#(< ~counter~0 9)} is VALID [2022-04-15 09:18:28,092 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {11598#true} {11934#(< ~counter~0 9)} #86#return; {11934#(< ~counter~0 9)} is VALID [2022-04-15 09:18:28,092 INFO L290 TraceCheckUtils]: 45: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-15 09:18:28,092 INFO L290 TraceCheckUtils]: 44: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-15 09:18:28,092 INFO L290 TraceCheckUtils]: 43: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-15 09:18:28,092 INFO L272 TraceCheckUtils]: 42: Hoare triple {11934#(< ~counter~0 9)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11598#true} is VALID [2022-04-15 09:18:28,092 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11598#true} {11934#(< ~counter~0 9)} #84#return; {11934#(< ~counter~0 9)} is VALID [2022-04-15 09:18:28,092 INFO L290 TraceCheckUtils]: 40: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-15 09:18:28,092 INFO L290 TraceCheckUtils]: 39: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-15 09:18:28,092 INFO L290 TraceCheckUtils]: 38: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-15 09:18:28,093 INFO L272 TraceCheckUtils]: 37: Hoare triple {11934#(< ~counter~0 9)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11598#true} is VALID [2022-04-15 09:18:28,093 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11598#true} {11934#(< ~counter~0 9)} #82#return; {11934#(< ~counter~0 9)} is VALID [2022-04-15 09:18:28,093 INFO L290 TraceCheckUtils]: 35: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-15 09:18:28,093 INFO L290 TraceCheckUtils]: 34: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-15 09:18:28,093 INFO L290 TraceCheckUtils]: 33: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-15 09:18:28,093 INFO L272 TraceCheckUtils]: 32: Hoare triple {11934#(< ~counter~0 9)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11598#true} is VALID [2022-04-15 09:18:28,093 INFO L290 TraceCheckUtils]: 31: Hoare triple {11934#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {11934#(< ~counter~0 9)} is VALID [2022-04-15 09:18:28,094 INFO L290 TraceCheckUtils]: 30: Hoare triple {11989#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11934#(< ~counter~0 9)} is VALID [2022-04-15 09:18:28,094 INFO L290 TraceCheckUtils]: 29: Hoare triple {11989#(< ~counter~0 8)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11989#(< ~counter~0 8)} is VALID [2022-04-15 09:18:28,094 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {11598#true} {11989#(< ~counter~0 8)} #86#return; {11989#(< ~counter~0 8)} is VALID [2022-04-15 09:18:28,095 INFO L290 TraceCheckUtils]: 27: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-15 09:18:28,095 INFO L290 TraceCheckUtils]: 26: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-15 09:18:28,095 INFO L290 TraceCheckUtils]: 25: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-15 09:18:28,095 INFO L272 TraceCheckUtils]: 24: Hoare triple {11989#(< ~counter~0 8)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11598#true} is VALID [2022-04-15 09:18:28,095 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11598#true} {11989#(< ~counter~0 8)} #84#return; {11989#(< ~counter~0 8)} is VALID [2022-04-15 09:18:28,095 INFO L290 TraceCheckUtils]: 22: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-15 09:18:28,095 INFO L290 TraceCheckUtils]: 21: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-15 09:18:28,095 INFO L290 TraceCheckUtils]: 20: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-15 09:18:28,095 INFO L272 TraceCheckUtils]: 19: Hoare triple {11989#(< ~counter~0 8)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11598#true} is VALID [2022-04-15 09:18:28,096 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {11598#true} {11989#(< ~counter~0 8)} #82#return; {11989#(< ~counter~0 8)} is VALID [2022-04-15 09:18:28,096 INFO L290 TraceCheckUtils]: 17: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-15 09:18:28,096 INFO L290 TraceCheckUtils]: 16: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-15 09:18:28,096 INFO L290 TraceCheckUtils]: 15: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-15 09:18:28,096 INFO L272 TraceCheckUtils]: 14: Hoare triple {11989#(< ~counter~0 8)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11598#true} is VALID [2022-04-15 09:18:28,096 INFO L290 TraceCheckUtils]: 13: Hoare triple {11989#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {11989#(< ~counter~0 8)} is VALID [2022-04-15 09:18:28,097 INFO L290 TraceCheckUtils]: 12: Hoare triple {12044#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11989#(< ~counter~0 8)} is VALID [2022-04-15 09:18:28,106 INFO L290 TraceCheckUtils]: 11: Hoare triple {12044#(< ~counter~0 7)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {12044#(< ~counter~0 7)} is VALID [2022-04-15 09:18:28,107 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11598#true} {12044#(< ~counter~0 7)} #80#return; {12044#(< ~counter~0 7)} is VALID [2022-04-15 09:18:28,107 INFO L290 TraceCheckUtils]: 9: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-15 09:18:28,107 INFO L290 TraceCheckUtils]: 8: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-15 09:18:28,107 INFO L290 TraceCheckUtils]: 7: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-15 09:18:28,107 INFO L272 TraceCheckUtils]: 6: Hoare triple {12044#(< ~counter~0 7)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {11598#true} is VALID [2022-04-15 09:18:28,107 INFO L290 TraceCheckUtils]: 5: Hoare triple {12044#(< ~counter~0 7)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {12044#(< ~counter~0 7)} is VALID [2022-04-15 09:18:28,107 INFO L272 TraceCheckUtils]: 4: Hoare triple {12044#(< ~counter~0 7)} call #t~ret8 := main(); {12044#(< ~counter~0 7)} is VALID [2022-04-15 09:18:28,108 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12044#(< ~counter~0 7)} {11598#true} #96#return; {12044#(< ~counter~0 7)} is VALID [2022-04-15 09:18:28,108 INFO L290 TraceCheckUtils]: 2: Hoare triple {12044#(< ~counter~0 7)} assume true; {12044#(< ~counter~0 7)} is VALID [2022-04-15 09:18:28,108 INFO L290 TraceCheckUtils]: 1: Hoare triple {11598#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {12044#(< ~counter~0 7)} is VALID [2022-04-15 09:18:28,108 INFO L272 TraceCheckUtils]: 0: Hoare triple {11598#true} call ULTIMATE.init(); {11598#true} is VALID [2022-04-15 09:18:28,109 INFO L134 CoverageAnalysis]: Checked inductivity of 224 backedges. 20 proven. 24 refuted. 0 times theorem prover too weak. 180 trivial. 0 not checked. [2022-04-15 09:18:28,109 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:18:28,109 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [703038492] [2022-04-15 09:18:28,109 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:18:28,109 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [432938131] [2022-04-15 09:18:28,109 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [432938131] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:18:28,109 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:18:28,109 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-15 09:18:28,109 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:18:28,109 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [331044849] [2022-04-15 09:18:28,109 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [331044849] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:28,109 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:28,109 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-15 09:18:28,109 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1578797761] [2022-04-15 09:18:28,109 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:18:28,110 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 6 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) Word has length 79 [2022-04-15 09:18:28,110 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:18:28,110 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 6 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-15 09:18:28,155 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:28,155 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-15 09:18:28,155 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:28,156 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-15 09:18:28,156 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-15 09:18:28,156 INFO L87 Difference]: Start difference. First operand 125 states and 145 transitions. Second operand has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 6 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-15 09:18:28,462 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:28,463 INFO L93 Difference]: Finished difference Result 170 states and 207 transitions. [2022-04-15 09:18:28,463 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 09:18:28,463 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 6 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) Word has length 79 [2022-04-15 09:18:28,463 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:18:28,463 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 6 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-15 09:18:28,464 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 102 transitions. [2022-04-15 09:18:28,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 6 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-15 09:18:28,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 102 transitions. [2022-04-15 09:18:28,465 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 102 transitions. [2022-04-15 09:18:28,539 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:28,541 INFO L225 Difference]: With dead ends: 170 [2022-04-15 09:18:28,541 INFO L226 Difference]: Without dead ends: 127 [2022-04-15 09:18:28,541 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 160 GetRequests, 147 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=83, Invalid=127, Unknown=0, NotChecked=0, Total=210 [2022-04-15 09:18:28,542 INFO L913 BasicCegarLoop]: 48 mSDtfsCounter, 7 mSDsluCounter, 129 mSDsCounter, 0 mSdLazyCounter, 39 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 177 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 39 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:18:28,542 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 177 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 39 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:18:28,542 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 127 states. [2022-04-15 09:18:28,634 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 127 to 127. [2022-04-15 09:18:28,634 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:18:28,635 INFO L82 GeneralOperation]: Start isEquivalent. First operand 127 states. Second operand has 127 states, 82 states have (on average 1.1585365853658536) internal successors, (95), 86 states have internal predecessors, (95), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:18:28,635 INFO L74 IsIncluded]: Start isIncluded. First operand 127 states. Second operand has 127 states, 82 states have (on average 1.1585365853658536) internal successors, (95), 86 states have internal predecessors, (95), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:18:28,635 INFO L87 Difference]: Start difference. First operand 127 states. Second operand has 127 states, 82 states have (on average 1.1585365853658536) internal successors, (95), 86 states have internal predecessors, (95), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:18:28,637 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:28,637 INFO L93 Difference]: Finished difference Result 127 states and 147 transitions. [2022-04-15 09:18:28,637 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 147 transitions. [2022-04-15 09:18:28,638 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:28,638 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:28,638 INFO L74 IsIncluded]: Start isIncluded. First operand has 127 states, 82 states have (on average 1.1585365853658536) internal successors, (95), 86 states have internal predecessors, (95), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) Second operand 127 states. [2022-04-15 09:18:28,638 INFO L87 Difference]: Start difference. First operand has 127 states, 82 states have (on average 1.1585365853658536) internal successors, (95), 86 states have internal predecessors, (95), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) Second operand 127 states. [2022-04-15 09:18:28,640 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:28,640 INFO L93 Difference]: Finished difference Result 127 states and 147 transitions. [2022-04-15 09:18:28,640 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 147 transitions. [2022-04-15 09:18:28,640 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:28,640 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:28,640 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:18:28,640 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:18:28,640 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 127 states, 82 states have (on average 1.1585365853658536) internal successors, (95), 86 states have internal predecessors, (95), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:18:28,642 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 127 states to 127 states and 147 transitions. [2022-04-15 09:18:28,642 INFO L78 Accepts]: Start accepts. Automaton has 127 states and 147 transitions. Word has length 79 [2022-04-15 09:18:28,642 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:18:28,642 INFO L478 AbstractCegarLoop]: Abstraction has 127 states and 147 transitions. [2022-04-15 09:18:28,643 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 6 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-15 09:18:28,643 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 127 states and 147 transitions. [2022-04-15 09:18:30,818 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 147 edges. 146 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:30,819 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 147 transitions. [2022-04-15 09:18:30,819 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-15 09:18:30,819 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:18:30,819 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:18:30,835 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Ended with exit code 0 [2022-04-15 09:18:31,020 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-15 09:18:31,020 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:18:31,020 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:18:31,020 INFO L85 PathProgramCache]: Analyzing trace with hash -1069895175, now seen corresponding path program 3 times [2022-04-15 09:18:31,020 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:31,021 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [815620622] [2022-04-15 09:18:38,886 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:18:38,887 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:18:38,887 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:18:38,887 INFO L85 PathProgramCache]: Analyzing trace with hash -1069895175, now seen corresponding path program 4 times [2022-04-15 09:18:38,887 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:18:38,887 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1402861885] [2022-04-15 09:18:38,887 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:18:38,887 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:18:38,895 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:18:38,895 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1155844951] [2022-04-15 09:18:38,895 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 09:18:38,896 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:18:38,896 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:18:38,896 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:18:38,926 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-04-15 09:18:38,957 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 09:18:38,957 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:18:38,958 INFO L263 TraceCheckSpWp]: Trace formula consists of 222 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-15 09:18:38,970 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:38,971 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:18:39,283 INFO L272 TraceCheckUtils]: 0: Hoare triple {12937#true} call ULTIMATE.init(); {12937#true} is VALID [2022-04-15 09:18:39,283 INFO L290 TraceCheckUtils]: 1: Hoare triple {12937#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {12945#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:39,284 INFO L290 TraceCheckUtils]: 2: Hoare triple {12945#(<= ~counter~0 0)} assume true; {12945#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:39,284 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12945#(<= ~counter~0 0)} {12937#true} #96#return; {12945#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:39,284 INFO L272 TraceCheckUtils]: 4: Hoare triple {12945#(<= ~counter~0 0)} call #t~ret8 := main(); {12945#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:39,284 INFO L290 TraceCheckUtils]: 5: Hoare triple {12945#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {12945#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:39,285 INFO L272 TraceCheckUtils]: 6: Hoare triple {12945#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {12945#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:39,285 INFO L290 TraceCheckUtils]: 7: Hoare triple {12945#(<= ~counter~0 0)} ~cond := #in~cond; {12945#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:39,285 INFO L290 TraceCheckUtils]: 8: Hoare triple {12945#(<= ~counter~0 0)} assume !(0 == ~cond); {12945#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:39,285 INFO L290 TraceCheckUtils]: 9: Hoare triple {12945#(<= ~counter~0 0)} assume true; {12945#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:39,286 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12945#(<= ~counter~0 0)} {12945#(<= ~counter~0 0)} #80#return; {12945#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:39,286 INFO L290 TraceCheckUtils]: 11: Hoare triple {12945#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {12945#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:39,286 INFO L290 TraceCheckUtils]: 12: Hoare triple {12945#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,286 INFO L290 TraceCheckUtils]: 13: Hoare triple {12979#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,287 INFO L272 TraceCheckUtils]: 14: Hoare triple {12979#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,287 INFO L290 TraceCheckUtils]: 15: Hoare triple {12979#(<= ~counter~0 1)} ~cond := #in~cond; {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,287 INFO L290 TraceCheckUtils]: 16: Hoare triple {12979#(<= ~counter~0 1)} assume !(0 == ~cond); {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,287 INFO L290 TraceCheckUtils]: 17: Hoare triple {12979#(<= ~counter~0 1)} assume true; {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,288 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {12979#(<= ~counter~0 1)} {12979#(<= ~counter~0 1)} #82#return; {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,288 INFO L272 TraceCheckUtils]: 19: Hoare triple {12979#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,288 INFO L290 TraceCheckUtils]: 20: Hoare triple {12979#(<= ~counter~0 1)} ~cond := #in~cond; {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,288 INFO L290 TraceCheckUtils]: 21: Hoare triple {12979#(<= ~counter~0 1)} assume !(0 == ~cond); {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,289 INFO L290 TraceCheckUtils]: 22: Hoare triple {12979#(<= ~counter~0 1)} assume true; {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,289 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {12979#(<= ~counter~0 1)} {12979#(<= ~counter~0 1)} #84#return; {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,289 INFO L272 TraceCheckUtils]: 24: Hoare triple {12979#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,290 INFO L290 TraceCheckUtils]: 25: Hoare triple {12979#(<= ~counter~0 1)} ~cond := #in~cond; {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,290 INFO L290 TraceCheckUtils]: 26: Hoare triple {12979#(<= ~counter~0 1)} assume !(0 == ~cond); {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,290 INFO L290 TraceCheckUtils]: 27: Hoare triple {12979#(<= ~counter~0 1)} assume true; {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,290 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {12979#(<= ~counter~0 1)} {12979#(<= ~counter~0 1)} #86#return; {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,291 INFO L290 TraceCheckUtils]: 29: Hoare triple {12979#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {12979#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:39,291 INFO L290 TraceCheckUtils]: 30: Hoare triple {12979#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,291 INFO L290 TraceCheckUtils]: 31: Hoare triple {13034#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,291 INFO L272 TraceCheckUtils]: 32: Hoare triple {13034#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,292 INFO L290 TraceCheckUtils]: 33: Hoare triple {13034#(<= ~counter~0 2)} ~cond := #in~cond; {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,292 INFO L290 TraceCheckUtils]: 34: Hoare triple {13034#(<= ~counter~0 2)} assume !(0 == ~cond); {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,292 INFO L290 TraceCheckUtils]: 35: Hoare triple {13034#(<= ~counter~0 2)} assume true; {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,292 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13034#(<= ~counter~0 2)} {13034#(<= ~counter~0 2)} #82#return; {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,293 INFO L272 TraceCheckUtils]: 37: Hoare triple {13034#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,293 INFO L290 TraceCheckUtils]: 38: Hoare triple {13034#(<= ~counter~0 2)} ~cond := #in~cond; {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,293 INFO L290 TraceCheckUtils]: 39: Hoare triple {13034#(<= ~counter~0 2)} assume !(0 == ~cond); {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,293 INFO L290 TraceCheckUtils]: 40: Hoare triple {13034#(<= ~counter~0 2)} assume true; {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,294 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {13034#(<= ~counter~0 2)} {13034#(<= ~counter~0 2)} #84#return; {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,294 INFO L272 TraceCheckUtils]: 42: Hoare triple {13034#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,294 INFO L290 TraceCheckUtils]: 43: Hoare triple {13034#(<= ~counter~0 2)} ~cond := #in~cond; {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,294 INFO L290 TraceCheckUtils]: 44: Hoare triple {13034#(<= ~counter~0 2)} assume !(0 == ~cond); {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,295 INFO L290 TraceCheckUtils]: 45: Hoare triple {13034#(<= ~counter~0 2)} assume true; {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,295 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {13034#(<= ~counter~0 2)} {13034#(<= ~counter~0 2)} #86#return; {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,295 INFO L290 TraceCheckUtils]: 47: Hoare triple {13034#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {13034#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:39,296 INFO L290 TraceCheckUtils]: 48: Hoare triple {13034#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,296 INFO L290 TraceCheckUtils]: 49: Hoare triple {13089#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,296 INFO L272 TraceCheckUtils]: 50: Hoare triple {13089#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,297 INFO L290 TraceCheckUtils]: 51: Hoare triple {13089#(<= ~counter~0 3)} ~cond := #in~cond; {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,297 INFO L290 TraceCheckUtils]: 52: Hoare triple {13089#(<= ~counter~0 3)} assume !(0 == ~cond); {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,297 INFO L290 TraceCheckUtils]: 53: Hoare triple {13089#(<= ~counter~0 3)} assume true; {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,297 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {13089#(<= ~counter~0 3)} {13089#(<= ~counter~0 3)} #82#return; {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,298 INFO L272 TraceCheckUtils]: 55: Hoare triple {13089#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,298 INFO L290 TraceCheckUtils]: 56: Hoare triple {13089#(<= ~counter~0 3)} ~cond := #in~cond; {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,298 INFO L290 TraceCheckUtils]: 57: Hoare triple {13089#(<= ~counter~0 3)} assume !(0 == ~cond); {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,299 INFO L290 TraceCheckUtils]: 58: Hoare triple {13089#(<= ~counter~0 3)} assume true; {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,299 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {13089#(<= ~counter~0 3)} {13089#(<= ~counter~0 3)} #84#return; {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,299 INFO L272 TraceCheckUtils]: 60: Hoare triple {13089#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,300 INFO L290 TraceCheckUtils]: 61: Hoare triple {13089#(<= ~counter~0 3)} ~cond := #in~cond; {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,300 INFO L290 TraceCheckUtils]: 62: Hoare triple {13089#(<= ~counter~0 3)} assume !(0 == ~cond); {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,300 INFO L290 TraceCheckUtils]: 63: Hoare triple {13089#(<= ~counter~0 3)} assume true; {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,300 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {13089#(<= ~counter~0 3)} {13089#(<= ~counter~0 3)} #86#return; {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,301 INFO L290 TraceCheckUtils]: 65: Hoare triple {13089#(<= ~counter~0 3)} assume !(~r~0 >= ~d~0); {13089#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:39,301 INFO L290 TraceCheckUtils]: 66: Hoare triple {13089#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13144#(<= ~counter~0 4)} is VALID [2022-04-15 09:18:39,301 INFO L290 TraceCheckUtils]: 67: Hoare triple {13144#(<= ~counter~0 4)} assume !!(#t~post7 < 10);havoc #t~post7; {13144#(<= ~counter~0 4)} is VALID [2022-04-15 09:18:39,301 INFO L272 TraceCheckUtils]: 68: Hoare triple {13144#(<= ~counter~0 4)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {13144#(<= ~counter~0 4)} is VALID [2022-04-15 09:18:39,302 INFO L290 TraceCheckUtils]: 69: Hoare triple {13144#(<= ~counter~0 4)} ~cond := #in~cond; {13144#(<= ~counter~0 4)} is VALID [2022-04-15 09:18:39,311 INFO L290 TraceCheckUtils]: 70: Hoare triple {13144#(<= ~counter~0 4)} assume !(0 == ~cond); {13144#(<= ~counter~0 4)} is VALID [2022-04-15 09:18:39,312 INFO L290 TraceCheckUtils]: 71: Hoare triple {13144#(<= ~counter~0 4)} assume true; {13144#(<= ~counter~0 4)} is VALID [2022-04-15 09:18:39,312 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {13144#(<= ~counter~0 4)} {13144#(<= ~counter~0 4)} #88#return; {13144#(<= ~counter~0 4)} is VALID [2022-04-15 09:18:39,313 INFO L272 TraceCheckUtils]: 73: Hoare triple {13144#(<= ~counter~0 4)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {13144#(<= ~counter~0 4)} is VALID [2022-04-15 09:18:39,313 INFO L290 TraceCheckUtils]: 74: Hoare triple {13144#(<= ~counter~0 4)} ~cond := #in~cond; {13144#(<= ~counter~0 4)} is VALID [2022-04-15 09:18:39,313 INFO L290 TraceCheckUtils]: 75: Hoare triple {13144#(<= ~counter~0 4)} assume !(0 == ~cond); {13144#(<= ~counter~0 4)} is VALID [2022-04-15 09:18:39,313 INFO L290 TraceCheckUtils]: 76: Hoare triple {13144#(<= ~counter~0 4)} assume true; {13144#(<= ~counter~0 4)} is VALID [2022-04-15 09:18:39,314 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {13144#(<= ~counter~0 4)} {13144#(<= ~counter~0 4)} #90#return; {13144#(<= ~counter~0 4)} is VALID [2022-04-15 09:18:39,314 INFO L290 TraceCheckUtils]: 78: Hoare triple {13144#(<= ~counter~0 4)} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {13144#(<= ~counter~0 4)} is VALID [2022-04-15 09:18:39,314 INFO L290 TraceCheckUtils]: 79: Hoare triple {13144#(<= ~counter~0 4)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {13144#(<= ~counter~0 4)} is VALID [2022-04-15 09:18:39,314 INFO L290 TraceCheckUtils]: 80: Hoare triple {13144#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13187#(<= |main_#t~post7| 4)} is VALID [2022-04-15 09:18:39,315 INFO L290 TraceCheckUtils]: 81: Hoare triple {13187#(<= |main_#t~post7| 4)} assume !(#t~post7 < 10);havoc #t~post7; {12938#false} is VALID [2022-04-15 09:18:39,315 INFO L272 TraceCheckUtils]: 82: Hoare triple {12938#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {12938#false} is VALID [2022-04-15 09:18:39,315 INFO L290 TraceCheckUtils]: 83: Hoare triple {12938#false} ~cond := #in~cond; {12938#false} is VALID [2022-04-15 09:18:39,315 INFO L290 TraceCheckUtils]: 84: Hoare triple {12938#false} assume 0 == ~cond; {12938#false} is VALID [2022-04-15 09:18:39,315 INFO L290 TraceCheckUtils]: 85: Hoare triple {12938#false} assume !false; {12938#false} is VALID [2022-04-15 09:18:39,315 INFO L134 CoverageAnalysis]: Checked inductivity of 262 backedges. 22 proven. 200 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-15 09:18:39,315 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:18:39,665 INFO L290 TraceCheckUtils]: 85: Hoare triple {12938#false} assume !false; {12938#false} is VALID [2022-04-15 09:18:39,665 INFO L290 TraceCheckUtils]: 84: Hoare triple {12938#false} assume 0 == ~cond; {12938#false} is VALID [2022-04-15 09:18:39,665 INFO L290 TraceCheckUtils]: 83: Hoare triple {12938#false} ~cond := #in~cond; {12938#false} is VALID [2022-04-15 09:18:39,665 INFO L272 TraceCheckUtils]: 82: Hoare triple {12938#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {12938#false} is VALID [2022-04-15 09:18:39,665 INFO L290 TraceCheckUtils]: 81: Hoare triple {13215#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {12938#false} is VALID [2022-04-15 09:18:39,666 INFO L290 TraceCheckUtils]: 80: Hoare triple {13219#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13215#(< |main_#t~post7| 10)} is VALID [2022-04-15 09:18:39,666 INFO L290 TraceCheckUtils]: 79: Hoare triple {13219#(< ~counter~0 10)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {13219#(< ~counter~0 10)} is VALID [2022-04-15 09:18:39,666 INFO L290 TraceCheckUtils]: 78: Hoare triple {13219#(< ~counter~0 10)} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {13219#(< ~counter~0 10)} is VALID [2022-04-15 09:18:39,667 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {12937#true} {13219#(< ~counter~0 10)} #90#return; {13219#(< ~counter~0 10)} is VALID [2022-04-15 09:18:39,667 INFO L290 TraceCheckUtils]: 76: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-15 09:18:39,667 INFO L290 TraceCheckUtils]: 75: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-15 09:18:39,667 INFO L290 TraceCheckUtils]: 74: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-15 09:18:39,667 INFO L272 TraceCheckUtils]: 73: Hoare triple {13219#(< ~counter~0 10)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {12937#true} is VALID [2022-04-15 09:18:39,667 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {12937#true} {13219#(< ~counter~0 10)} #88#return; {13219#(< ~counter~0 10)} is VALID [2022-04-15 09:18:39,667 INFO L290 TraceCheckUtils]: 71: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-15 09:18:39,667 INFO L290 TraceCheckUtils]: 70: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-15 09:18:39,667 INFO L290 TraceCheckUtils]: 69: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-15 09:18:39,668 INFO L272 TraceCheckUtils]: 68: Hoare triple {13219#(< ~counter~0 10)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {12937#true} is VALID [2022-04-15 09:18:39,668 INFO L290 TraceCheckUtils]: 67: Hoare triple {13219#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {13219#(< ~counter~0 10)} is VALID [2022-04-15 09:18:39,668 INFO L290 TraceCheckUtils]: 66: Hoare triple {13262#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13219#(< ~counter~0 10)} is VALID [2022-04-15 09:18:39,669 INFO L290 TraceCheckUtils]: 65: Hoare triple {13262#(< ~counter~0 9)} assume !(~r~0 >= ~d~0); {13262#(< ~counter~0 9)} is VALID [2022-04-15 09:18:39,669 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {12937#true} {13262#(< ~counter~0 9)} #86#return; {13262#(< ~counter~0 9)} is VALID [2022-04-15 09:18:39,669 INFO L290 TraceCheckUtils]: 63: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-15 09:18:39,669 INFO L290 TraceCheckUtils]: 62: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-15 09:18:39,669 INFO L290 TraceCheckUtils]: 61: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-15 09:18:39,669 INFO L272 TraceCheckUtils]: 60: Hoare triple {13262#(< ~counter~0 9)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {12937#true} is VALID [2022-04-15 09:18:39,670 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {12937#true} {13262#(< ~counter~0 9)} #84#return; {13262#(< ~counter~0 9)} is VALID [2022-04-15 09:18:39,670 INFO L290 TraceCheckUtils]: 58: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-15 09:18:39,670 INFO L290 TraceCheckUtils]: 57: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-15 09:18:39,670 INFO L290 TraceCheckUtils]: 56: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-15 09:18:39,670 INFO L272 TraceCheckUtils]: 55: Hoare triple {13262#(< ~counter~0 9)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {12937#true} is VALID [2022-04-15 09:18:39,670 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {12937#true} {13262#(< ~counter~0 9)} #82#return; {13262#(< ~counter~0 9)} is VALID [2022-04-15 09:18:39,670 INFO L290 TraceCheckUtils]: 53: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-15 09:18:39,670 INFO L290 TraceCheckUtils]: 52: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-15 09:18:39,670 INFO L290 TraceCheckUtils]: 51: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-15 09:18:39,671 INFO L272 TraceCheckUtils]: 50: Hoare triple {13262#(< ~counter~0 9)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {12937#true} is VALID [2022-04-15 09:18:39,671 INFO L290 TraceCheckUtils]: 49: Hoare triple {13262#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {13262#(< ~counter~0 9)} is VALID [2022-04-15 09:18:39,671 INFO L290 TraceCheckUtils]: 48: Hoare triple {13317#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13262#(< ~counter~0 9)} is VALID [2022-04-15 09:18:39,671 INFO L290 TraceCheckUtils]: 47: Hoare triple {13317#(< ~counter~0 8)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {13317#(< ~counter~0 8)} is VALID [2022-04-15 09:18:39,672 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {12937#true} {13317#(< ~counter~0 8)} #86#return; {13317#(< ~counter~0 8)} is VALID [2022-04-15 09:18:39,672 INFO L290 TraceCheckUtils]: 45: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-15 09:18:39,672 INFO L290 TraceCheckUtils]: 44: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-15 09:18:39,672 INFO L290 TraceCheckUtils]: 43: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-15 09:18:39,672 INFO L272 TraceCheckUtils]: 42: Hoare triple {13317#(< ~counter~0 8)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {12937#true} is VALID [2022-04-15 09:18:39,673 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12937#true} {13317#(< ~counter~0 8)} #84#return; {13317#(< ~counter~0 8)} is VALID [2022-04-15 09:18:39,673 INFO L290 TraceCheckUtils]: 40: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-15 09:18:39,673 INFO L290 TraceCheckUtils]: 39: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-15 09:18:39,673 INFO L290 TraceCheckUtils]: 38: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-15 09:18:39,673 INFO L272 TraceCheckUtils]: 37: Hoare triple {13317#(< ~counter~0 8)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {12937#true} is VALID [2022-04-15 09:18:39,673 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {12937#true} {13317#(< ~counter~0 8)} #82#return; {13317#(< ~counter~0 8)} is VALID [2022-04-15 09:18:39,673 INFO L290 TraceCheckUtils]: 35: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-15 09:18:39,673 INFO L290 TraceCheckUtils]: 34: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-15 09:18:39,673 INFO L290 TraceCheckUtils]: 33: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-15 09:18:39,673 INFO L272 TraceCheckUtils]: 32: Hoare triple {13317#(< ~counter~0 8)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {12937#true} is VALID [2022-04-15 09:18:39,674 INFO L290 TraceCheckUtils]: 31: Hoare triple {13317#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {13317#(< ~counter~0 8)} is VALID [2022-04-15 09:18:39,674 INFO L290 TraceCheckUtils]: 30: Hoare triple {13372#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13317#(< ~counter~0 8)} is VALID [2022-04-15 09:18:39,674 INFO L290 TraceCheckUtils]: 29: Hoare triple {13372#(< ~counter~0 7)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {13372#(< ~counter~0 7)} is VALID [2022-04-15 09:18:39,675 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {12937#true} {13372#(< ~counter~0 7)} #86#return; {13372#(< ~counter~0 7)} is VALID [2022-04-15 09:18:39,675 INFO L290 TraceCheckUtils]: 27: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-15 09:18:39,675 INFO L290 TraceCheckUtils]: 26: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-15 09:18:39,675 INFO L290 TraceCheckUtils]: 25: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-15 09:18:39,675 INFO L272 TraceCheckUtils]: 24: Hoare triple {13372#(< ~counter~0 7)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {12937#true} is VALID [2022-04-15 09:18:39,675 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {12937#true} {13372#(< ~counter~0 7)} #84#return; {13372#(< ~counter~0 7)} is VALID [2022-04-15 09:18:39,676 INFO L290 TraceCheckUtils]: 22: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-15 09:18:39,676 INFO L290 TraceCheckUtils]: 21: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-15 09:18:39,676 INFO L290 TraceCheckUtils]: 20: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-15 09:18:39,676 INFO L272 TraceCheckUtils]: 19: Hoare triple {13372#(< ~counter~0 7)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {12937#true} is VALID [2022-04-15 09:18:39,676 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {12937#true} {13372#(< ~counter~0 7)} #82#return; {13372#(< ~counter~0 7)} is VALID [2022-04-15 09:18:39,676 INFO L290 TraceCheckUtils]: 17: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-15 09:18:39,676 INFO L290 TraceCheckUtils]: 16: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-15 09:18:39,676 INFO L290 TraceCheckUtils]: 15: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-15 09:18:39,676 INFO L272 TraceCheckUtils]: 14: Hoare triple {13372#(< ~counter~0 7)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {12937#true} is VALID [2022-04-15 09:18:39,677 INFO L290 TraceCheckUtils]: 13: Hoare triple {13372#(< ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {13372#(< ~counter~0 7)} is VALID [2022-04-15 09:18:39,677 INFO L290 TraceCheckUtils]: 12: Hoare triple {13427#(< ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13372#(< ~counter~0 7)} is VALID [2022-04-15 09:18:39,677 INFO L290 TraceCheckUtils]: 11: Hoare triple {13427#(< ~counter~0 6)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {13427#(< ~counter~0 6)} is VALID [2022-04-15 09:18:39,678 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12937#true} {13427#(< ~counter~0 6)} #80#return; {13427#(< ~counter~0 6)} is VALID [2022-04-15 09:18:39,678 INFO L290 TraceCheckUtils]: 9: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-15 09:18:39,678 INFO L290 TraceCheckUtils]: 8: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-15 09:18:39,678 INFO L290 TraceCheckUtils]: 7: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-15 09:18:39,678 INFO L272 TraceCheckUtils]: 6: Hoare triple {13427#(< ~counter~0 6)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {12937#true} is VALID [2022-04-15 09:18:39,678 INFO L290 TraceCheckUtils]: 5: Hoare triple {13427#(< ~counter~0 6)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {13427#(< ~counter~0 6)} is VALID [2022-04-15 09:18:39,678 INFO L272 TraceCheckUtils]: 4: Hoare triple {13427#(< ~counter~0 6)} call #t~ret8 := main(); {13427#(< ~counter~0 6)} is VALID [2022-04-15 09:18:39,679 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13427#(< ~counter~0 6)} {12937#true} #96#return; {13427#(< ~counter~0 6)} is VALID [2022-04-15 09:18:39,679 INFO L290 TraceCheckUtils]: 2: Hoare triple {13427#(< ~counter~0 6)} assume true; {13427#(< ~counter~0 6)} is VALID [2022-04-15 09:18:39,679 INFO L290 TraceCheckUtils]: 1: Hoare triple {12937#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {13427#(< ~counter~0 6)} is VALID [2022-04-15 09:18:39,680 INFO L272 TraceCheckUtils]: 0: Hoare triple {12937#true} call ULTIMATE.init(); {12937#true} is VALID [2022-04-15 09:18:39,680 INFO L134 CoverageAnalysis]: Checked inductivity of 262 backedges. 22 proven. 20 refuted. 0 times theorem prover too weak. 220 trivial. 0 not checked. [2022-04-15 09:18:39,680 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:18:39,680 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1402861885] [2022-04-15 09:18:39,680 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:18:39,680 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1155844951] [2022-04-15 09:18:39,680 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1155844951] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:18:39,680 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:18:39,680 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-15 09:18:39,680 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:18:39,680 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [815620622] [2022-04-15 09:18:39,680 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [815620622] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:39,680 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:39,681 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 09:18:39,681 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1417287731] [2022-04-15 09:18:39,681 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:18:39,681 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 7 states have internal predecessors, (37), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) Word has length 86 [2022-04-15 09:18:39,681 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:18:39,681 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.625) internal successors, (37), 7 states have internal predecessors, (37), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-15 09:18:39,730 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:39,730 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 09:18:39,730 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:39,730 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 09:18:39,730 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-15 09:18:39,730 INFO L87 Difference]: Start difference. First operand 127 states and 147 transitions. Second operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 7 states have internal predecessors, (37), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-15 09:18:40,186 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:40,186 INFO L93 Difference]: Finished difference Result 179 states and 206 transitions. [2022-04-15 09:18:40,186 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 09:18:40,186 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 7 states have internal predecessors, (37), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) Word has length 86 [2022-04-15 09:18:40,187 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:18:40,187 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 7 states have internal predecessors, (37), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-15 09:18:40,188 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 119 transitions. [2022-04-15 09:18:40,188 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 7 states have internal predecessors, (37), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-15 09:18:40,189 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 119 transitions. [2022-04-15 09:18:40,189 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 119 transitions. [2022-04-15 09:18:40,279 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:40,282 INFO L225 Difference]: With dead ends: 179 [2022-04-15 09:18:40,282 INFO L226 Difference]: Without dead ends: 164 [2022-04-15 09:18:40,282 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 172 GetRequests, 159 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=81, Invalid=129, Unknown=0, NotChecked=0, Total=210 [2022-04-15 09:18:40,282 INFO L913 BasicCegarLoop]: 56 mSDtfsCounter, 50 mSDsluCounter, 129 mSDsCounter, 0 mSdLazyCounter, 65 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 185 SdHoareTripleChecker+Invalid, 107 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 65 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 09:18:40,282 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 185 Invalid, 107 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 65 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 09:18:40,283 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states. [2022-04-15 09:18:40,434 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 161. [2022-04-15 09:18:40,434 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:18:40,434 INFO L82 GeneralOperation]: Start isEquivalent. First operand 164 states. Second operand has 161 states, 105 states have (on average 1.1523809523809523) internal successors, (121), 109 states have internal predecessors, (121), 34 states have call successors, (34), 23 states have call predecessors, (34), 21 states have return successors, (31), 28 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-15 09:18:40,434 INFO L74 IsIncluded]: Start isIncluded. First operand 164 states. Second operand has 161 states, 105 states have (on average 1.1523809523809523) internal successors, (121), 109 states have internal predecessors, (121), 34 states have call successors, (34), 23 states have call predecessors, (34), 21 states have return successors, (31), 28 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-15 09:18:40,435 INFO L87 Difference]: Start difference. First operand 164 states. Second operand has 161 states, 105 states have (on average 1.1523809523809523) internal successors, (121), 109 states have internal predecessors, (121), 34 states have call successors, (34), 23 states have call predecessors, (34), 21 states have return successors, (31), 28 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-15 09:18:40,437 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:40,437 INFO L93 Difference]: Finished difference Result 164 states and 188 transitions. [2022-04-15 09:18:40,437 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 188 transitions. [2022-04-15 09:18:40,438 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:40,438 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:40,438 INFO L74 IsIncluded]: Start isIncluded. First operand has 161 states, 105 states have (on average 1.1523809523809523) internal successors, (121), 109 states have internal predecessors, (121), 34 states have call successors, (34), 23 states have call predecessors, (34), 21 states have return successors, (31), 28 states have call predecessors, (31), 31 states have call successors, (31) Second operand 164 states. [2022-04-15 09:18:40,438 INFO L87 Difference]: Start difference. First operand has 161 states, 105 states have (on average 1.1523809523809523) internal successors, (121), 109 states have internal predecessors, (121), 34 states have call successors, (34), 23 states have call predecessors, (34), 21 states have return successors, (31), 28 states have call predecessors, (31), 31 states have call successors, (31) Second operand 164 states. [2022-04-15 09:18:40,440 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:40,440 INFO L93 Difference]: Finished difference Result 164 states and 188 transitions. [2022-04-15 09:18:40,440 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 188 transitions. [2022-04-15 09:18:40,441 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:40,441 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:40,441 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:18:40,441 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:18:40,441 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 161 states, 105 states have (on average 1.1523809523809523) internal successors, (121), 109 states have internal predecessors, (121), 34 states have call successors, (34), 23 states have call predecessors, (34), 21 states have return successors, (31), 28 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-15 09:18:40,443 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 186 transitions. [2022-04-15 09:18:40,443 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 186 transitions. Word has length 86 [2022-04-15 09:18:40,444 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:18:40,444 INFO L478 AbstractCegarLoop]: Abstraction has 161 states and 186 transitions. [2022-04-15 09:18:40,444 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 7 states have internal predecessors, (37), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-15 09:18:40,444 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 161 states and 186 transitions. [2022-04-15 09:18:42,628 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 186 edges. 185 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:42,632 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 186 transitions. [2022-04-15 09:18:42,633 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-15 09:18:42,633 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:18:42,633 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:18:42,649 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-15 09:18:42,849 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable16,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:18:42,849 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:18:42,850 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:18:42,850 INFO L85 PathProgramCache]: Analyzing trace with hash -1068167297, now seen corresponding path program 5 times [2022-04-15 09:18:42,850 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:42,850 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1090296852] [2022-04-15 09:18:49,901 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:18:49,902 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:18:49,902 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:18:49,902 INFO L85 PathProgramCache]: Analyzing trace with hash -1068167297, now seen corresponding path program 6 times [2022-04-15 09:18:49,902 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:18:49,902 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [921232492] [2022-04-15 09:18:49,902 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:18:49,902 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:18:49,911 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:18:49,911 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [979233918] [2022-04-15 09:18:49,911 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 09:18:49,911 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:18:49,911 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:18:49,912 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:18:49,914 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-04-15 09:18:49,970 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2022-04-15 09:18:49,970 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:18:49,970 INFO L263 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-15 09:18:49,988 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:49,989 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:20:07,012 INFO L272 TraceCheckUtils]: 0: Hoare triple {14476#true} call ULTIMATE.init(); {14476#true} is VALID [2022-04-15 09:20:07,012 INFO L290 TraceCheckUtils]: 1: Hoare triple {14476#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {14476#true} is VALID [2022-04-15 09:20:07,012 INFO L290 TraceCheckUtils]: 2: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:20:07,012 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14476#true} {14476#true} #96#return; {14476#true} is VALID [2022-04-15 09:20:07,012 INFO L272 TraceCheckUtils]: 4: Hoare triple {14476#true} call #t~ret8 := main(); {14476#true} is VALID [2022-04-15 09:20:07,012 INFO L290 TraceCheckUtils]: 5: Hoare triple {14476#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {14476#true} is VALID [2022-04-15 09:20:07,013 INFO L272 TraceCheckUtils]: 6: Hoare triple {14476#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:20:07,013 INFO L290 TraceCheckUtils]: 7: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:20:07,013 INFO L290 TraceCheckUtils]: 8: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:20:07,013 INFO L290 TraceCheckUtils]: 9: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:20:07,013 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14476#true} {14476#true} #80#return; {14476#true} is VALID [2022-04-15 09:20:07,013 INFO L290 TraceCheckUtils]: 11: Hoare triple {14476#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:20:07,014 INFO L290 TraceCheckUtils]: 12: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:20:07,014 INFO L290 TraceCheckUtils]: 13: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:20:07,014 INFO L272 TraceCheckUtils]: 14: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:20:07,014 INFO L290 TraceCheckUtils]: 15: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:20:07,014 INFO L290 TraceCheckUtils]: 16: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:20:07,014 INFO L290 TraceCheckUtils]: 17: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:20:07,014 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {14476#true} {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #82#return; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:20:07,015 INFO L272 TraceCheckUtils]: 19: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:20:07,015 INFO L290 TraceCheckUtils]: 20: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:20:07,015 INFO L290 TraceCheckUtils]: 21: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:20:07,015 INFO L290 TraceCheckUtils]: 22: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:20:07,015 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {14476#true} {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #84#return; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:20:07,015 INFO L272 TraceCheckUtils]: 24: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:20:07,015 INFO L290 TraceCheckUtils]: 25: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:20:07,015 INFO L290 TraceCheckUtils]: 26: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:20:07,015 INFO L290 TraceCheckUtils]: 27: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:20:07,016 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {14476#true} {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #86#return; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:20:07,016 INFO L290 TraceCheckUtils]: 29: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:20:07,017 INFO L290 TraceCheckUtils]: 30: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:20:07,017 INFO L290 TraceCheckUtils]: 31: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:20:07,017 INFO L272 TraceCheckUtils]: 32: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:20:07,017 INFO L290 TraceCheckUtils]: 33: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:20:07,017 INFO L290 TraceCheckUtils]: 34: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:20:07,017 INFO L290 TraceCheckUtils]: 35: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:20:07,018 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14476#true} {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #82#return; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:20:07,018 INFO L272 TraceCheckUtils]: 37: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:20:07,018 INFO L290 TraceCheckUtils]: 38: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:20:07,018 INFO L290 TraceCheckUtils]: 39: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:20:07,018 INFO L290 TraceCheckUtils]: 40: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:20:07,018 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14476#true} {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #84#return; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:20:07,018 INFO L272 TraceCheckUtils]: 42: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:20:07,018 INFO L290 TraceCheckUtils]: 43: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:20:07,018 INFO L290 TraceCheckUtils]: 44: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:20:07,018 INFO L290 TraceCheckUtils]: 45: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:20:07,019 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {14476#true} {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #86#return; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:20:07,020 INFO L290 TraceCheckUtils]: 47: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {14623#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:20:07,020 INFO L290 TraceCheckUtils]: 48: Hoare triple {14623#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14623#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:20:07,020 INFO L290 TraceCheckUtils]: 49: Hoare triple {14623#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} assume !!(#t~post6 < 10);havoc #t~post6; {14623#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:20:07,021 INFO L272 TraceCheckUtils]: 50: Hoare triple {14623#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:20:07,021 INFO L290 TraceCheckUtils]: 51: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:20:07,021 INFO L290 TraceCheckUtils]: 52: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:20:07,021 INFO L290 TraceCheckUtils]: 53: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:20:07,021 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {14476#true} {14623#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} #82#return; {14623#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:20:07,021 INFO L272 TraceCheckUtils]: 55: Hoare triple {14623#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:20:07,021 INFO L290 TraceCheckUtils]: 56: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:20:07,021 INFO L290 TraceCheckUtils]: 57: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:20:07,021 INFO L290 TraceCheckUtils]: 58: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:20:07,022 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {14476#true} {14623#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} #84#return; {14623#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:20:07,022 INFO L272 TraceCheckUtils]: 60: Hoare triple {14623#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:20:07,022 INFO L290 TraceCheckUtils]: 61: Hoare triple {14476#true} ~cond := #in~cond; {14666#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:20:07,023 INFO L290 TraceCheckUtils]: 62: Hoare triple {14666#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {14670#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:20:07,023 INFO L290 TraceCheckUtils]: 63: Hoare triple {14670#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14670#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:20:07,023 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {14670#(not (= |__VERIFIER_assert_#in~cond| 0))} {14623#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} #86#return; {14677#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:20:07,024 INFO L290 TraceCheckUtils]: 65: Hoare triple {14677#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} assume !(~r~0 >= ~d~0); {14677#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:20:07,024 INFO L290 TraceCheckUtils]: 66: Hoare triple {14677#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14677#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:20:07,025 INFO L290 TraceCheckUtils]: 67: Hoare triple {14677#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} assume !!(#t~post7 < 10);havoc #t~post7; {14677#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:20:07,025 INFO L272 TraceCheckUtils]: 68: Hoare triple {14677#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:20:07,025 INFO L290 TraceCheckUtils]: 69: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:20:07,025 INFO L290 TraceCheckUtils]: 70: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:20:07,025 INFO L290 TraceCheckUtils]: 71: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:20:07,025 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {14476#true} {14677#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} #88#return; {14677#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:20:07,026 INFO L272 TraceCheckUtils]: 73: Hoare triple {14677#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:20:07,026 INFO L290 TraceCheckUtils]: 74: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:20:07,026 INFO L290 TraceCheckUtils]: 75: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:20:07,026 INFO L290 TraceCheckUtils]: 76: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:20:07,026 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {14476#true} {14677#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} #90#return; {14677#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:20:07,030 INFO L290 TraceCheckUtils]: 78: Hoare triple {14677#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {14720#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= main_~q~0 0))} is VALID [2022-04-15 09:20:07,032 INFO L290 TraceCheckUtils]: 79: Hoare triple {14720#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= main_~q~0 0))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:20:07,032 INFO L290 TraceCheckUtils]: 80: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:20:07,033 INFO L290 TraceCheckUtils]: 81: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} assume !!(#t~post7 < 10);havoc #t~post7; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:20:07,033 INFO L272 TraceCheckUtils]: 82: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {14734#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:20:07,033 INFO L290 TraceCheckUtils]: 83: Hoare triple {14734#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14738#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:20:07,034 INFO L290 TraceCheckUtils]: 84: Hoare triple {14738#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14477#false} is VALID [2022-04-15 09:20:07,034 INFO L290 TraceCheckUtils]: 85: Hoare triple {14477#false} assume !false; {14477#false} is VALID [2022-04-15 09:20:07,034 INFO L134 CoverageAnalysis]: Checked inductivity of 263 backedges. 57 proven. 10 refuted. 0 times theorem prover too weak. 196 trivial. 0 not checked. [2022-04-15 09:20:07,034 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:20:42,244 WARN L232 SmtUtils]: Spent 13.00s on a formula simplification that was a NOOP. DAG size: 51 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-15 09:21:49,416 INFO L290 TraceCheckUtils]: 85: Hoare triple {14477#false} assume !false; {14477#false} is VALID [2022-04-15 09:21:49,416 INFO L290 TraceCheckUtils]: 84: Hoare triple {14738#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14477#false} is VALID [2022-04-15 09:21:49,417 INFO L290 TraceCheckUtils]: 83: Hoare triple {14734#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14738#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:21:49,417 INFO L272 TraceCheckUtils]: 82: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {14734#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:21:49,418 INFO L290 TraceCheckUtils]: 81: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} assume !!(#t~post7 < 10);havoc #t~post7; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:21:49,418 INFO L290 TraceCheckUtils]: 80: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:21:49,420 INFO L290 TraceCheckUtils]: 79: Hoare triple {14763#(= (* (+ main_~q~0 main_~p~0) (mod main_~B~0 4294967296)) (+ (mod main_~A~0 4294967296) main_~d~0 (* (- 1) main_~r~0)))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:21:49,429 INFO L290 TraceCheckUtils]: 78: Hoare triple {14767#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {14763#(= (* (+ main_~q~0 main_~p~0) (mod main_~B~0 4294967296)) (+ (mod main_~A~0 4294967296) main_~d~0 (* (- 1) main_~r~0)))} is VALID [2022-04-15 09:21:49,430 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {14476#true} {14767#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} #90#return; {14767#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:21:49,430 INFO L290 TraceCheckUtils]: 76: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:21:49,430 INFO L290 TraceCheckUtils]: 75: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:21:49,430 INFO L290 TraceCheckUtils]: 74: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:21:49,430 INFO L272 TraceCheckUtils]: 73: Hoare triple {14767#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:21:49,431 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {14476#true} {14767#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} #88#return; {14767#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:21:49,431 INFO L290 TraceCheckUtils]: 71: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:21:49,431 INFO L290 TraceCheckUtils]: 70: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:21:49,431 INFO L290 TraceCheckUtils]: 69: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:21:49,431 INFO L272 TraceCheckUtils]: 68: Hoare triple {14767#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:21:49,432 INFO L290 TraceCheckUtils]: 67: Hoare triple {14767#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} assume !!(#t~post7 < 10);havoc #t~post7; {14767#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:21:49,433 INFO L290 TraceCheckUtils]: 66: Hoare triple {14767#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14767#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:21:49,434 INFO L290 TraceCheckUtils]: 65: Hoare triple {14767#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} assume !(~r~0 >= ~d~0); {14767#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:21:49,436 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {14670#(not (= |__VERIFIER_assert_#in~cond| 0))} {14810#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} #86#return; {14767#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:21:49,436 INFO L290 TraceCheckUtils]: 63: Hoare triple {14670#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14670#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:21:49,437 INFO L290 TraceCheckUtils]: 62: Hoare triple {14820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {14670#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:21:49,437 INFO L290 TraceCheckUtils]: 61: Hoare triple {14476#true} ~cond := #in~cond; {14820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:21:49,437 INFO L272 TraceCheckUtils]: 60: Hoare triple {14810#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:21:49,438 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {14476#true} {14810#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} #84#return; {14810#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} is VALID [2022-04-15 09:21:49,438 INFO L290 TraceCheckUtils]: 58: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:21:49,438 INFO L290 TraceCheckUtils]: 57: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:21:49,438 INFO L290 TraceCheckUtils]: 56: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:21:49,438 INFO L272 TraceCheckUtils]: 55: Hoare triple {14810#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:21:49,438 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {14476#true} {14810#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} #82#return; {14810#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} is VALID [2022-04-15 09:21:49,438 INFO L290 TraceCheckUtils]: 53: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:21:49,438 INFO L290 TraceCheckUtils]: 52: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:21:49,438 INFO L290 TraceCheckUtils]: 51: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:21:49,439 INFO L272 TraceCheckUtils]: 50: Hoare triple {14810#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:21:49,440 INFO L290 TraceCheckUtils]: 49: Hoare triple {14810#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} assume !!(#t~post6 < 10);havoc #t~post6; {14810#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} is VALID [2022-04-15 09:21:49,441 INFO L290 TraceCheckUtils]: 48: Hoare triple {14810#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14810#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} is VALID [2022-04-15 09:21:49,444 INFO L290 TraceCheckUtils]: 47: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {14810#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} is VALID [2022-04-15 09:21:49,444 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {14476#true} {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #86#return; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:21:49,444 INFO L290 TraceCheckUtils]: 45: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:21:49,444 INFO L290 TraceCheckUtils]: 44: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:21:49,444 INFO L290 TraceCheckUtils]: 43: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:21:49,444 INFO L272 TraceCheckUtils]: 42: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:21:49,445 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14476#true} {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #84#return; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:21:49,445 INFO L290 TraceCheckUtils]: 40: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:21:49,445 INFO L290 TraceCheckUtils]: 39: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:21:49,445 INFO L290 TraceCheckUtils]: 38: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:21:49,445 INFO L272 TraceCheckUtils]: 37: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:21:49,446 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14476#true} {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #82#return; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:21:49,446 INFO L290 TraceCheckUtils]: 35: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:21:49,446 INFO L290 TraceCheckUtils]: 34: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:21:49,446 INFO L290 TraceCheckUtils]: 33: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:21:49,446 INFO L272 TraceCheckUtils]: 32: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:21:49,446 INFO L290 TraceCheckUtils]: 31: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 10);havoc #t~post6; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:21:49,446 INFO L290 TraceCheckUtils]: 30: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:21:49,446 INFO L290 TraceCheckUtils]: 29: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:21:49,447 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {14476#true} {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #86#return; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:21:49,447 INFO L290 TraceCheckUtils]: 27: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:21:49,447 INFO L290 TraceCheckUtils]: 26: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:21:49,447 INFO L290 TraceCheckUtils]: 25: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:21:49,447 INFO L272 TraceCheckUtils]: 24: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:21:49,448 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {14476#true} {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #84#return; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:21:49,448 INFO L290 TraceCheckUtils]: 22: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:21:49,448 INFO L290 TraceCheckUtils]: 21: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:21:49,448 INFO L290 TraceCheckUtils]: 20: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:21:49,448 INFO L272 TraceCheckUtils]: 19: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:21:49,448 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {14476#true} {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #82#return; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:21:49,448 INFO L290 TraceCheckUtils]: 17: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:21:49,448 INFO L290 TraceCheckUtils]: 16: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:21:49,448 INFO L290 TraceCheckUtils]: 15: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:21:49,448 INFO L272 TraceCheckUtils]: 14: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:21:49,449 INFO L290 TraceCheckUtils]: 13: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 10);havoc #t~post6; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:21:49,449 INFO L290 TraceCheckUtils]: 12: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:21:49,449 INFO L290 TraceCheckUtils]: 11: Hoare triple {14476#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:21:49,449 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14476#true} {14476#true} #80#return; {14476#true} is VALID [2022-04-15 09:21:49,449 INFO L290 TraceCheckUtils]: 9: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:21:49,449 INFO L290 TraceCheckUtils]: 8: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-15 09:21:49,450 INFO L290 TraceCheckUtils]: 7: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-15 09:21:49,450 INFO L272 TraceCheckUtils]: 6: Hoare triple {14476#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {14476#true} is VALID [2022-04-15 09:21:49,450 INFO L290 TraceCheckUtils]: 5: Hoare triple {14476#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {14476#true} is VALID [2022-04-15 09:21:49,450 INFO L272 TraceCheckUtils]: 4: Hoare triple {14476#true} call #t~ret8 := main(); {14476#true} is VALID [2022-04-15 09:21:49,450 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14476#true} {14476#true} #96#return; {14476#true} is VALID [2022-04-15 09:21:49,450 INFO L290 TraceCheckUtils]: 2: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-15 09:21:49,450 INFO L290 TraceCheckUtils]: 1: Hoare triple {14476#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {14476#true} is VALID [2022-04-15 09:21:49,450 INFO L272 TraceCheckUtils]: 0: Hoare triple {14476#true} call ULTIMATE.init(); {14476#true} is VALID [2022-04-15 09:21:49,450 INFO L134 CoverageAnalysis]: Checked inductivity of 263 backedges. 45 proven. 22 refuted. 0 times theorem prover too weak. 196 trivial. 0 not checked. [2022-04-15 09:21:49,450 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:21:49,450 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [921232492] [2022-04-15 09:21:49,451 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:21:49,451 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [979233918] [2022-04-15 09:21:49,451 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [979233918] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:21:49,451 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:21:49,451 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 10] total 15 [2022-04-15 09:21:49,451 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:21:49,451 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1090296852] [2022-04-15 09:21:49,451 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1090296852] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:21:49,451 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:21:49,451 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 09:21:49,451 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2138186340] [2022-04-15 09:21:49,451 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:21:49,451 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 86 [2022-04-15 09:21:49,452 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:21:49,452 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:21:49,499 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:21:49,499 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 09:21:49,499 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:21:49,499 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 09:21:49,499 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=164, Unknown=0, NotChecked=0, Total=210 [2022-04-15 09:21:49,500 INFO L87 Difference]: Start difference. First operand 161 states and 186 transitions. Second operand has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:21:51,892 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 09:21:53,207 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.28s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 09:21:58,474 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.59s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 09:22:00,773 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [] [2022-04-15 09:22:00,792 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:00,792 INFO L93 Difference]: Finished difference Result 200 states and 235 transitions. [2022-04-15 09:22:00,792 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 09:22:00,792 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 86 [2022-04-15 09:22:00,792 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:22:00,792 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:22:00,793 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 109 transitions. [2022-04-15 09:22:00,794 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:22:00,794 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 109 transitions. [2022-04-15 09:22:00,795 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 109 transitions. [2022-04-15 09:22:00,915 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:00,918 INFO L225 Difference]: With dead ends: 200 [2022-04-15 09:22:00,918 INFO L226 Difference]: Without dead ends: 180 [2022-04-15 09:22:00,918 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 173 GetRequests, 155 SyntacticMatches, 3 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 76 ImplicationChecksByTransitivity, 16.3s TimeCoverageRelationStatistics Valid=59, Invalid=213, Unknown=0, NotChecked=0, Total=272 [2022-04-15 09:22:00,918 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 41 mSDsluCounter, 119 mSDsCounter, 0 mSdLazyCounter, 225 mSolverCounterSat, 39 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 7.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 157 SdHoareTripleChecker+Invalid, 266 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 39 IncrementalHoareTripleChecker+Valid, 225 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 7.8s IncrementalHoareTripleChecker+Time [2022-04-15 09:22:00,919 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [55 Valid, 157 Invalid, 266 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [39 Valid, 225 Invalid, 2 Unknown, 0 Unchecked, 7.8s Time] [2022-04-15 09:22:00,919 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 180 states. [2022-04-15 09:22:01,063 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 180 to 173. [2022-04-15 09:22:01,063 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:22:01,063 INFO L82 GeneralOperation]: Start isEquivalent. First operand 180 states. Second operand has 173 states, 114 states have (on average 1.1666666666666667) internal successors, (133), 120 states have internal predecessors, (133), 36 states have call successors, (36), 23 states have call predecessors, (36), 22 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-15 09:22:01,064 INFO L74 IsIncluded]: Start isIncluded. First operand 180 states. Second operand has 173 states, 114 states have (on average 1.1666666666666667) internal successors, (133), 120 states have internal predecessors, (133), 36 states have call successors, (36), 23 states have call predecessors, (36), 22 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-15 09:22:01,064 INFO L87 Difference]: Start difference. First operand 180 states. Second operand has 173 states, 114 states have (on average 1.1666666666666667) internal successors, (133), 120 states have internal predecessors, (133), 36 states have call successors, (36), 23 states have call predecessors, (36), 22 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-15 09:22:01,066 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:01,066 INFO L93 Difference]: Finished difference Result 180 states and 213 transitions. [2022-04-15 09:22:01,066 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 213 transitions. [2022-04-15 09:22:01,067 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:22:01,067 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:22:01,067 INFO L74 IsIncluded]: Start isIncluded. First operand has 173 states, 114 states have (on average 1.1666666666666667) internal successors, (133), 120 states have internal predecessors, (133), 36 states have call successors, (36), 23 states have call predecessors, (36), 22 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) Second operand 180 states. [2022-04-15 09:22:01,067 INFO L87 Difference]: Start difference. First operand has 173 states, 114 states have (on average 1.1666666666666667) internal successors, (133), 120 states have internal predecessors, (133), 36 states have call successors, (36), 23 states have call predecessors, (36), 22 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) Second operand 180 states. [2022-04-15 09:22:01,070 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:01,070 INFO L93 Difference]: Finished difference Result 180 states and 213 transitions. [2022-04-15 09:22:01,070 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 213 transitions. [2022-04-15 09:22:01,070 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:22:01,070 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:22:01,070 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:22:01,070 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:22:01,070 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 173 states, 114 states have (on average 1.1666666666666667) internal successors, (133), 120 states have internal predecessors, (133), 36 states have call successors, (36), 23 states have call predecessors, (36), 22 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-15 09:22:01,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 173 states to 173 states and 203 transitions. [2022-04-15 09:22:01,073 INFO L78 Accepts]: Start accepts. Automaton has 173 states and 203 transitions. Word has length 86 [2022-04-15 09:22:01,073 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:22:01,073 INFO L478 AbstractCegarLoop]: Abstraction has 173 states and 203 transitions. [2022-04-15 09:22:01,073 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:22:01,073 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 173 states and 203 transitions. [2022-04-15 09:22:03,327 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 203 edges. 202 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:03,328 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 203 transitions. [2022-04-15 09:22:03,328 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-15 09:22:03,328 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:22:03,328 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:22:03,346 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-15 09:22:03,529 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-15 09:22:03,529 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:22:03,529 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:22:03,529 INFO L85 PathProgramCache]: Analyzing trace with hash -1271087930, now seen corresponding path program 7 times [2022-04-15 09:22:03,529 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:22:03,529 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1001778794] [2022-04-15 09:22:11,005 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:22:11,005 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:22:11,005 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:22:11,005 INFO L85 PathProgramCache]: Analyzing trace with hash -1271087930, now seen corresponding path program 8 times [2022-04-15 09:22:11,006 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:22:11,006 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1727447906] [2022-04-15 09:22:11,006 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:22:11,006 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:22:11,028 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:22:11,028 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [771400155] [2022-04-15 09:22:11,028 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:22:11,028 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:22:11,028 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:22:11,029 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:22:11,043 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-15 09:22:11,089 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:22:11,089 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:22:11,090 INFO L263 TraceCheckSpWp]: Trace formula consists of 231 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-15 09:22:11,105 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:22:11,106 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:22:12,570 INFO L272 TraceCheckUtils]: 0: Hoare triple {16116#true} call ULTIMATE.init(); {16116#true} is VALID [2022-04-15 09:22:12,570 INFO L290 TraceCheckUtils]: 1: Hoare triple {16116#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {16116#true} is VALID [2022-04-15 09:22:12,570 INFO L290 TraceCheckUtils]: 2: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:12,570 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16116#true} {16116#true} #96#return; {16116#true} is VALID [2022-04-15 09:22:12,571 INFO L272 TraceCheckUtils]: 4: Hoare triple {16116#true} call #t~ret8 := main(); {16116#true} is VALID [2022-04-15 09:22:12,571 INFO L290 TraceCheckUtils]: 5: Hoare triple {16116#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {16116#true} is VALID [2022-04-15 09:22:12,571 INFO L272 TraceCheckUtils]: 6: Hoare triple {16116#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:12,571 INFO L290 TraceCheckUtils]: 7: Hoare triple {16116#true} ~cond := #in~cond; {16142#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 09:22:12,571 INFO L290 TraceCheckUtils]: 8: Hoare triple {16142#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {16146#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 09:22:12,571 INFO L290 TraceCheckUtils]: 9: Hoare triple {16146#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {16146#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 09:22:12,572 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16146#(not (= |assume_abort_if_not_#in~cond| 0))} {16116#true} #80#return; {16153#(<= 1 (mod main_~B~0 4294967296))} is VALID [2022-04-15 09:22:12,572 INFO L290 TraceCheckUtils]: 11: Hoare triple {16153#(<= 1 (mod main_~B~0 4294967296))} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:22:12,573 INFO L290 TraceCheckUtils]: 12: Hoare triple {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:22:12,573 INFO L290 TraceCheckUtils]: 13: Hoare triple {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:22:12,573 INFO L272 TraceCheckUtils]: 14: Hoare triple {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:12,573 INFO L290 TraceCheckUtils]: 15: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:12,573 INFO L290 TraceCheckUtils]: 16: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:12,573 INFO L290 TraceCheckUtils]: 17: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:12,574 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {16116#true} {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #82#return; {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:22:12,574 INFO L272 TraceCheckUtils]: 19: Hoare triple {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:12,574 INFO L290 TraceCheckUtils]: 20: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:12,574 INFO L290 TraceCheckUtils]: 21: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:12,574 INFO L290 TraceCheckUtils]: 22: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:12,574 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {16116#true} {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #84#return; {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:22:12,574 INFO L272 TraceCheckUtils]: 24: Hoare triple {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:12,575 INFO L290 TraceCheckUtils]: 25: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:12,575 INFO L290 TraceCheckUtils]: 26: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:12,575 INFO L290 TraceCheckUtils]: 27: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:12,575 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {16116#true} {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #86#return; {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:22:12,576 INFO L290 TraceCheckUtils]: 29: Hoare triple {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:22:12,576 INFO L290 TraceCheckUtils]: 30: Hoare triple {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:22:12,577 INFO L290 TraceCheckUtils]: 31: Hoare triple {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 10);havoc #t~post6; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:22:12,577 INFO L272 TraceCheckUtils]: 32: Hoare triple {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:12,577 INFO L290 TraceCheckUtils]: 33: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:12,577 INFO L290 TraceCheckUtils]: 34: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:12,577 INFO L290 TraceCheckUtils]: 35: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:12,577 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16116#true} {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #82#return; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:22:12,577 INFO L272 TraceCheckUtils]: 37: Hoare triple {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:12,577 INFO L290 TraceCheckUtils]: 38: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:12,578 INFO L290 TraceCheckUtils]: 39: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:12,578 INFO L290 TraceCheckUtils]: 40: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:12,578 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {16116#true} {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #84#return; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:22:12,578 INFO L272 TraceCheckUtils]: 42: Hoare triple {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:12,578 INFO L290 TraceCheckUtils]: 43: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:12,578 INFO L290 TraceCheckUtils]: 44: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:12,578 INFO L290 TraceCheckUtils]: 45: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:12,579 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {16116#true} {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #86#return; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:22:12,579 INFO L290 TraceCheckUtils]: 47: Hoare triple {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {16267#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:22:12,580 INFO L290 TraceCheckUtils]: 48: Hoare triple {16267#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16267#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:22:12,580 INFO L290 TraceCheckUtils]: 49: Hoare triple {16267#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} assume !!(#t~post6 < 10);havoc #t~post6; {16267#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:22:12,580 INFO L272 TraceCheckUtils]: 50: Hoare triple {16267#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:12,580 INFO L290 TraceCheckUtils]: 51: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:12,580 INFO L290 TraceCheckUtils]: 52: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:12,580 INFO L290 TraceCheckUtils]: 53: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:12,581 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {16116#true} {16267#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} #82#return; {16267#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:22:12,581 INFO L272 TraceCheckUtils]: 55: Hoare triple {16267#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:12,581 INFO L290 TraceCheckUtils]: 56: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:12,581 INFO L290 TraceCheckUtils]: 57: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:12,581 INFO L290 TraceCheckUtils]: 58: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:12,582 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {16116#true} {16267#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} #84#return; {16267#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:22:12,582 INFO L272 TraceCheckUtils]: 60: Hoare triple {16267#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:12,582 INFO L290 TraceCheckUtils]: 61: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:12,582 INFO L290 TraceCheckUtils]: 62: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:12,582 INFO L290 TraceCheckUtils]: 63: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:12,582 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {16116#true} {16267#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} #86#return; {16267#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:22:12,583 INFO L290 TraceCheckUtils]: 65: Hoare triple {16267#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} assume !(~r~0 >= ~d~0); {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:22:12,583 INFO L290 TraceCheckUtils]: 66: Hoare triple {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:22:12,583 INFO L290 TraceCheckUtils]: 67: Hoare triple {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} assume !!(#t~post7 < 10);havoc #t~post7; {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:22:12,583 INFO L272 TraceCheckUtils]: 68: Hoare triple {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:12,584 INFO L290 TraceCheckUtils]: 69: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:12,584 INFO L290 TraceCheckUtils]: 70: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:12,584 INFO L290 TraceCheckUtils]: 71: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:12,584 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {16116#true} {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} #88#return; {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:22:12,584 INFO L272 TraceCheckUtils]: 73: Hoare triple {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:12,584 INFO L290 TraceCheckUtils]: 74: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:12,584 INFO L290 TraceCheckUtils]: 75: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:12,584 INFO L290 TraceCheckUtils]: 76: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:12,585 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {16116#true} {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} #90#return; {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:22:12,586 INFO L290 TraceCheckUtils]: 78: Hoare triple {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:22:12,586 INFO L290 TraceCheckUtils]: 79: Hoare triple {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:22:12,587 INFO L290 TraceCheckUtils]: 80: Hoare triple {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:22:12,587 INFO L290 TraceCheckUtils]: 81: Hoare triple {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} assume !!(#t~post7 < 10);havoc #t~post7; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:22:12,587 INFO L272 TraceCheckUtils]: 82: Hoare triple {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:12,587 INFO L290 TraceCheckUtils]: 83: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:12,587 INFO L290 TraceCheckUtils]: 84: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:12,587 INFO L290 TraceCheckUtils]: 85: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:12,588 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {16116#true} {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #88#return; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:22:12,588 INFO L272 TraceCheckUtils]: 87: Hoare triple {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16389#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:22:12,588 INFO L290 TraceCheckUtils]: 88: Hoare triple {16389#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {16393#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:22:12,589 INFO L290 TraceCheckUtils]: 89: Hoare triple {16393#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {16117#false} is VALID [2022-04-15 09:22:12,589 INFO L290 TraceCheckUtils]: 90: Hoare triple {16117#false} assume !false; {16117#false} is VALID [2022-04-15 09:22:12,589 INFO L134 CoverageAnalysis]: Checked inductivity of 310 backedges. 24 proven. 22 refuted. 0 times theorem prover too weak. 264 trivial. 0 not checked. [2022-04-15 09:22:12,589 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:22:19,361 INFO L290 TraceCheckUtils]: 90: Hoare triple {16117#false} assume !false; {16117#false} is VALID [2022-04-15 09:22:19,361 INFO L290 TraceCheckUtils]: 89: Hoare triple {16393#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {16117#false} is VALID [2022-04-15 09:22:19,361 INFO L290 TraceCheckUtils]: 88: Hoare triple {16389#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {16393#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:22:19,362 INFO L272 TraceCheckUtils]: 87: Hoare triple {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16389#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:22:19,362 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {16116#true} {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #88#return; {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:22:19,362 INFO L290 TraceCheckUtils]: 85: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:19,362 INFO L290 TraceCheckUtils]: 84: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:19,363 INFO L290 TraceCheckUtils]: 83: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:19,363 INFO L272 TraceCheckUtils]: 82: Hoare triple {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:19,363 INFO L290 TraceCheckUtils]: 81: Hoare triple {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !!(#t~post7 < 10);havoc #t~post7; {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:22:19,363 INFO L290 TraceCheckUtils]: 80: Hoare triple {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:22:19,363 INFO L290 TraceCheckUtils]: 79: Hoare triple {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:22:19,380 INFO L290 TraceCheckUtils]: 78: Hoare triple {16437#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:22:19,381 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {16116#true} {16437#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} #90#return; {16437#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:22:19,381 INFO L290 TraceCheckUtils]: 76: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:19,381 INFO L290 TraceCheckUtils]: 75: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:19,381 INFO L290 TraceCheckUtils]: 74: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:19,381 INFO L272 TraceCheckUtils]: 73: Hoare triple {16437#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:19,381 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {16116#true} {16437#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} #88#return; {16437#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:22:19,381 INFO L290 TraceCheckUtils]: 71: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:19,381 INFO L290 TraceCheckUtils]: 70: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:19,381 INFO L290 TraceCheckUtils]: 69: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:19,382 INFO L272 TraceCheckUtils]: 68: Hoare triple {16437#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:19,382 INFO L290 TraceCheckUtils]: 67: Hoare triple {16437#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} assume !!(#t~post7 < 10);havoc #t~post7; {16437#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:22:19,383 INFO L290 TraceCheckUtils]: 66: Hoare triple {16437#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16437#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:22:19,384 INFO L290 TraceCheckUtils]: 65: Hoare triple {16477#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} assume !(~r~0 >= ~d~0); {16437#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:22:19,385 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {16116#true} {16477#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} #86#return; {16477#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:22:19,385 INFO L290 TraceCheckUtils]: 63: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:19,385 INFO L290 TraceCheckUtils]: 62: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:19,385 INFO L290 TraceCheckUtils]: 61: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:19,385 INFO L272 TraceCheckUtils]: 60: Hoare triple {16477#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:19,385 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {16116#true} {16477#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} #84#return; {16477#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:22:19,385 INFO L290 TraceCheckUtils]: 58: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:19,385 INFO L290 TraceCheckUtils]: 57: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:19,386 INFO L290 TraceCheckUtils]: 56: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:19,386 INFO L272 TraceCheckUtils]: 55: Hoare triple {16477#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:19,386 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {16116#true} {16477#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} #82#return; {16477#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:22:19,386 INFO L290 TraceCheckUtils]: 53: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:19,386 INFO L290 TraceCheckUtils]: 52: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:19,386 INFO L290 TraceCheckUtils]: 51: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:19,386 INFO L272 TraceCheckUtils]: 50: Hoare triple {16477#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:19,387 INFO L290 TraceCheckUtils]: 49: Hoare triple {16477#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} assume !!(#t~post6 < 10);havoc #t~post6; {16477#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:22:19,388 INFO L290 TraceCheckUtils]: 48: Hoare triple {16477#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16477#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:22:19,391 INFO L290 TraceCheckUtils]: 47: Hoare triple {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {16477#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:22:19,391 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {16116#true} {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #86#return; {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:22:19,391 INFO L290 TraceCheckUtils]: 45: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:19,391 INFO L290 TraceCheckUtils]: 44: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:19,391 INFO L290 TraceCheckUtils]: 43: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:19,391 INFO L272 TraceCheckUtils]: 42: Hoare triple {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:19,392 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {16116#true} {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #84#return; {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:22:19,392 INFO L290 TraceCheckUtils]: 40: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:19,392 INFO L290 TraceCheckUtils]: 39: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:19,392 INFO L290 TraceCheckUtils]: 38: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:19,392 INFO L272 TraceCheckUtils]: 37: Hoare triple {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:19,392 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16116#true} {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #82#return; {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:22:19,392 INFO L290 TraceCheckUtils]: 35: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:19,393 INFO L290 TraceCheckUtils]: 34: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:19,393 INFO L290 TraceCheckUtils]: 33: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:19,393 INFO L272 TraceCheckUtils]: 32: Hoare triple {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:19,393 INFO L290 TraceCheckUtils]: 31: Hoare triple {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} assume !!(#t~post6 < 10);havoc #t~post6; {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:22:19,393 INFO L290 TraceCheckUtils]: 30: Hoare triple {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:22:19,395 INFO L290 TraceCheckUtils]: 29: Hoare triple {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:22:19,395 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {16116#true} {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #86#return; {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:22:19,395 INFO L290 TraceCheckUtils]: 27: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:19,395 INFO L290 TraceCheckUtils]: 26: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:19,395 INFO L290 TraceCheckUtils]: 25: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:19,395 INFO L272 TraceCheckUtils]: 24: Hoare triple {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:19,396 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {16116#true} {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #84#return; {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:22:19,396 INFO L290 TraceCheckUtils]: 22: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:19,396 INFO L290 TraceCheckUtils]: 21: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:19,396 INFO L290 TraceCheckUtils]: 20: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:19,396 INFO L272 TraceCheckUtils]: 19: Hoare triple {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:19,396 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {16116#true} {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #82#return; {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:22:19,396 INFO L290 TraceCheckUtils]: 17: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:19,397 INFO L290 TraceCheckUtils]: 16: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:19,397 INFO L290 TraceCheckUtils]: 15: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:19,397 INFO L272 TraceCheckUtils]: 14: Hoare triple {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:19,397 INFO L290 TraceCheckUtils]: 13: Hoare triple {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} assume !!(#t~post6 < 10);havoc #t~post6; {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:22:19,397 INFO L290 TraceCheckUtils]: 12: Hoare triple {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:22:19,398 INFO L290 TraceCheckUtils]: 11: Hoare triple {16116#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:22:19,398 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16116#true} {16116#true} #80#return; {16116#true} is VALID [2022-04-15 09:22:19,398 INFO L290 TraceCheckUtils]: 9: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:19,398 INFO L290 TraceCheckUtils]: 8: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-15 09:22:19,398 INFO L290 TraceCheckUtils]: 7: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-15 09:22:19,398 INFO L272 TraceCheckUtils]: 6: Hoare triple {16116#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {16116#true} is VALID [2022-04-15 09:22:19,398 INFO L290 TraceCheckUtils]: 5: Hoare triple {16116#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {16116#true} is VALID [2022-04-15 09:22:19,398 INFO L272 TraceCheckUtils]: 4: Hoare triple {16116#true} call #t~ret8 := main(); {16116#true} is VALID [2022-04-15 09:22:19,398 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16116#true} {16116#true} #96#return; {16116#true} is VALID [2022-04-15 09:22:19,398 INFO L290 TraceCheckUtils]: 2: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-15 09:22:19,398 INFO L290 TraceCheckUtils]: 1: Hoare triple {16116#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {16116#true} is VALID [2022-04-15 09:22:19,398 INFO L272 TraceCheckUtils]: 0: Hoare triple {16116#true} call ULTIMATE.init(); {16116#true} is VALID [2022-04-15 09:22:19,399 INFO L134 CoverageAnalysis]: Checked inductivity of 310 backedges. 24 proven. 16 refuted. 0 times theorem prover too weak. 270 trivial. 0 not checked. [2022-04-15 09:22:19,399 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:22:19,399 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1727447906] [2022-04-15 09:22:19,399 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:22:19,399 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [771400155] [2022-04-15 09:22:19,399 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [771400155] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:22:19,399 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:22:19,399 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 8] total 15 [2022-04-15 09:22:19,399 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:22:19,399 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1001778794] [2022-04-15 09:22:19,399 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1001778794] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:22:19,399 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:22:19,400 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 09:22:19,400 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1711203151] [2022-04-15 09:22:19,400 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:22:19,400 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 5 states have call successors, (14) Word has length 91 [2022-04-15 09:22:19,400 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:22:19,400 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-15 09:22:19,456 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:19,457 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 09:22:19,457 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:22:19,457 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 09:22:19,457 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=162, Unknown=0, NotChecked=0, Total=210 [2022-04-15 09:22:19,457 INFO L87 Difference]: Start difference. First operand 173 states and 203 transitions. Second operand has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-15 09:22:21,008 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:21,008 INFO L93 Difference]: Finished difference Result 257 states and 325 transitions. [2022-04-15 09:22:21,008 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 09:22:21,009 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 5 states have call successors, (14) Word has length 91 [2022-04-15 09:22:21,009 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:22:21,009 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-15 09:22:21,010 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 124 transitions. [2022-04-15 09:22:21,010 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-15 09:22:21,011 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 124 transitions. [2022-04-15 09:22:21,011 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 124 transitions. [2022-04-15 09:22:21,130 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:21,133 INFO L225 Difference]: With dead ends: 257 [2022-04-15 09:22:21,133 INFO L226 Difference]: Without dead ends: 205 [2022-04-15 09:22:21,133 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 183 GetRequests, 165 SyntacticMatches, 3 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 48 ImplicationChecksByTransitivity, 1.6s TimeCoverageRelationStatistics Valid=56, Invalid=216, Unknown=0, NotChecked=0, Total=272 [2022-04-15 09:22:21,134 INFO L913 BasicCegarLoop]: 64 mSDtfsCounter, 48 mSDsluCounter, 252 mSDsCounter, 0 mSdLazyCounter, 287 mSolverCounterSat, 34 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 60 SdHoareTripleChecker+Valid, 316 SdHoareTripleChecker+Invalid, 321 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 34 IncrementalHoareTripleChecker+Valid, 287 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-15 09:22:21,134 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [60 Valid, 316 Invalid, 321 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [34 Valid, 287 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-15 09:22:21,134 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 205 states. [2022-04-15 09:22:21,349 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 205 to 205. [2022-04-15 09:22:21,350 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:22:21,350 INFO L82 GeneralOperation]: Start isEquivalent. First operand 205 states. Second operand has 205 states, 134 states have (on average 1.171641791044776) internal successors, (157), 143 states have internal predecessors, (157), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-15 09:22:21,350 INFO L74 IsIncluded]: Start isIncluded. First operand 205 states. Second operand has 205 states, 134 states have (on average 1.171641791044776) internal successors, (157), 143 states have internal predecessors, (157), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-15 09:22:21,350 INFO L87 Difference]: Start difference. First operand 205 states. Second operand has 205 states, 134 states have (on average 1.171641791044776) internal successors, (157), 143 states have internal predecessors, (157), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-15 09:22:21,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:21,354 INFO L93 Difference]: Finished difference Result 205 states and 243 transitions. [2022-04-15 09:22:21,354 INFO L276 IsEmpty]: Start isEmpty. Operand 205 states and 243 transitions. [2022-04-15 09:22:21,354 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:22:21,354 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:22:21,354 INFO L74 IsIncluded]: Start isIncluded. First operand has 205 states, 134 states have (on average 1.171641791044776) internal successors, (157), 143 states have internal predecessors, (157), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) Second operand 205 states. [2022-04-15 09:22:21,355 INFO L87 Difference]: Start difference. First operand has 205 states, 134 states have (on average 1.171641791044776) internal successors, (157), 143 states have internal predecessors, (157), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) Second operand 205 states. [2022-04-15 09:22:21,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:21,357 INFO L93 Difference]: Finished difference Result 205 states and 243 transitions. [2022-04-15 09:22:21,358 INFO L276 IsEmpty]: Start isEmpty. Operand 205 states and 243 transitions. [2022-04-15 09:22:21,358 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:22:21,358 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:22:21,358 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:22:21,358 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:22:21,358 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 205 states, 134 states have (on average 1.171641791044776) internal successors, (157), 143 states have internal predecessors, (157), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-15 09:22:21,361 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 205 states to 205 states and 243 transitions. [2022-04-15 09:22:21,361 INFO L78 Accepts]: Start accepts. Automaton has 205 states and 243 transitions. Word has length 91 [2022-04-15 09:22:21,362 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:22:21,362 INFO L478 AbstractCegarLoop]: Abstraction has 205 states and 243 transitions. [2022-04-15 09:22:21,362 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-15 09:22:21,362 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 205 states and 243 transitions. [2022-04-15 09:22:23,677 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 243 edges. 242 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:23,677 INFO L276 IsEmpty]: Start isEmpty. Operand 205 states and 243 transitions. [2022-04-15 09:22:23,678 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-15 09:22:23,678 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:22:23,678 INFO L499 BasicCegarLoop]: trace histogram [14, 13, 13, 5, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:22:23,694 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Ended with exit code 0 [2022-04-15 09:22:23,878 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:22:23,879 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:22:23,879 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:22:23,879 INFO L85 PathProgramCache]: Analyzing trace with hash 114996177, now seen corresponding path program 7 times [2022-04-15 09:22:23,879 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:22:23,879 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1079987616] [2022-04-15 09:22:30,916 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:22:30,916 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:22:30,916 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:22:30,916 INFO L85 PathProgramCache]: Analyzing trace with hash 114996177, now seen corresponding path program 8 times [2022-04-15 09:22:30,916 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:22:30,916 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [501130390] [2022-04-15 09:22:30,916 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:22:30,916 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:22:30,926 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:22:30,926 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2032453996] [2022-04-15 09:22:30,927 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:22:30,927 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:22:30,927 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:22:30,928 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:22:30,930 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-04-15 09:22:30,977 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:22:30,977 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:22:30,978 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-15 09:22:30,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:22:30,994 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:22:31,329 INFO L272 TraceCheckUtils]: 0: Hoare triple {18014#true} call ULTIMATE.init(); {18014#true} is VALID [2022-04-15 09:22:31,330 INFO L290 TraceCheckUtils]: 1: Hoare triple {18014#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {18022#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:31,330 INFO L290 TraceCheckUtils]: 2: Hoare triple {18022#(<= ~counter~0 0)} assume true; {18022#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:31,330 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18022#(<= ~counter~0 0)} {18014#true} #96#return; {18022#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:31,330 INFO L272 TraceCheckUtils]: 4: Hoare triple {18022#(<= ~counter~0 0)} call #t~ret8 := main(); {18022#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:31,331 INFO L290 TraceCheckUtils]: 5: Hoare triple {18022#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {18022#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:31,331 INFO L272 TraceCheckUtils]: 6: Hoare triple {18022#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {18022#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:31,331 INFO L290 TraceCheckUtils]: 7: Hoare triple {18022#(<= ~counter~0 0)} ~cond := #in~cond; {18022#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:31,331 INFO L290 TraceCheckUtils]: 8: Hoare triple {18022#(<= ~counter~0 0)} assume !(0 == ~cond); {18022#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:31,332 INFO L290 TraceCheckUtils]: 9: Hoare triple {18022#(<= ~counter~0 0)} assume true; {18022#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:31,332 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18022#(<= ~counter~0 0)} {18022#(<= ~counter~0 0)} #80#return; {18022#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:31,332 INFO L290 TraceCheckUtils]: 11: Hoare triple {18022#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {18022#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:31,333 INFO L290 TraceCheckUtils]: 12: Hoare triple {18022#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,333 INFO L290 TraceCheckUtils]: 13: Hoare triple {18056#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,333 INFO L272 TraceCheckUtils]: 14: Hoare triple {18056#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,333 INFO L290 TraceCheckUtils]: 15: Hoare triple {18056#(<= ~counter~0 1)} ~cond := #in~cond; {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,334 INFO L290 TraceCheckUtils]: 16: Hoare triple {18056#(<= ~counter~0 1)} assume !(0 == ~cond); {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,334 INFO L290 TraceCheckUtils]: 17: Hoare triple {18056#(<= ~counter~0 1)} assume true; {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,334 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {18056#(<= ~counter~0 1)} {18056#(<= ~counter~0 1)} #82#return; {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,335 INFO L272 TraceCheckUtils]: 19: Hoare triple {18056#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,335 INFO L290 TraceCheckUtils]: 20: Hoare triple {18056#(<= ~counter~0 1)} ~cond := #in~cond; {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,335 INFO L290 TraceCheckUtils]: 21: Hoare triple {18056#(<= ~counter~0 1)} assume !(0 == ~cond); {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,335 INFO L290 TraceCheckUtils]: 22: Hoare triple {18056#(<= ~counter~0 1)} assume true; {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,336 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {18056#(<= ~counter~0 1)} {18056#(<= ~counter~0 1)} #84#return; {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,336 INFO L272 TraceCheckUtils]: 24: Hoare triple {18056#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,336 INFO L290 TraceCheckUtils]: 25: Hoare triple {18056#(<= ~counter~0 1)} ~cond := #in~cond; {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,337 INFO L290 TraceCheckUtils]: 26: Hoare triple {18056#(<= ~counter~0 1)} assume !(0 == ~cond); {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,337 INFO L290 TraceCheckUtils]: 27: Hoare triple {18056#(<= ~counter~0 1)} assume true; {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,337 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {18056#(<= ~counter~0 1)} {18056#(<= ~counter~0 1)} #86#return; {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,337 INFO L290 TraceCheckUtils]: 29: Hoare triple {18056#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18056#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:31,338 INFO L290 TraceCheckUtils]: 30: Hoare triple {18056#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,338 INFO L290 TraceCheckUtils]: 31: Hoare triple {18111#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,338 INFO L272 TraceCheckUtils]: 32: Hoare triple {18111#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,339 INFO L290 TraceCheckUtils]: 33: Hoare triple {18111#(<= ~counter~0 2)} ~cond := #in~cond; {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,339 INFO L290 TraceCheckUtils]: 34: Hoare triple {18111#(<= ~counter~0 2)} assume !(0 == ~cond); {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,339 INFO L290 TraceCheckUtils]: 35: Hoare triple {18111#(<= ~counter~0 2)} assume true; {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,339 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {18111#(<= ~counter~0 2)} {18111#(<= ~counter~0 2)} #82#return; {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,340 INFO L272 TraceCheckUtils]: 37: Hoare triple {18111#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,340 INFO L290 TraceCheckUtils]: 38: Hoare triple {18111#(<= ~counter~0 2)} ~cond := #in~cond; {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,340 INFO L290 TraceCheckUtils]: 39: Hoare triple {18111#(<= ~counter~0 2)} assume !(0 == ~cond); {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,341 INFO L290 TraceCheckUtils]: 40: Hoare triple {18111#(<= ~counter~0 2)} assume true; {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,341 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {18111#(<= ~counter~0 2)} {18111#(<= ~counter~0 2)} #84#return; {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,341 INFO L272 TraceCheckUtils]: 42: Hoare triple {18111#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,341 INFO L290 TraceCheckUtils]: 43: Hoare triple {18111#(<= ~counter~0 2)} ~cond := #in~cond; {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,342 INFO L290 TraceCheckUtils]: 44: Hoare triple {18111#(<= ~counter~0 2)} assume !(0 == ~cond); {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,342 INFO L290 TraceCheckUtils]: 45: Hoare triple {18111#(<= ~counter~0 2)} assume true; {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,342 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {18111#(<= ~counter~0 2)} {18111#(<= ~counter~0 2)} #86#return; {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,343 INFO L290 TraceCheckUtils]: 47: Hoare triple {18111#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18111#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:31,343 INFO L290 TraceCheckUtils]: 48: Hoare triple {18111#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,343 INFO L290 TraceCheckUtils]: 49: Hoare triple {18166#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,344 INFO L272 TraceCheckUtils]: 50: Hoare triple {18166#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,344 INFO L290 TraceCheckUtils]: 51: Hoare triple {18166#(<= ~counter~0 3)} ~cond := #in~cond; {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,344 INFO L290 TraceCheckUtils]: 52: Hoare triple {18166#(<= ~counter~0 3)} assume !(0 == ~cond); {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,344 INFO L290 TraceCheckUtils]: 53: Hoare triple {18166#(<= ~counter~0 3)} assume true; {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,345 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {18166#(<= ~counter~0 3)} {18166#(<= ~counter~0 3)} #82#return; {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,345 INFO L272 TraceCheckUtils]: 55: Hoare triple {18166#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,345 INFO L290 TraceCheckUtils]: 56: Hoare triple {18166#(<= ~counter~0 3)} ~cond := #in~cond; {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,345 INFO L290 TraceCheckUtils]: 57: Hoare triple {18166#(<= ~counter~0 3)} assume !(0 == ~cond); {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,346 INFO L290 TraceCheckUtils]: 58: Hoare triple {18166#(<= ~counter~0 3)} assume true; {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,346 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {18166#(<= ~counter~0 3)} {18166#(<= ~counter~0 3)} #84#return; {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,346 INFO L272 TraceCheckUtils]: 60: Hoare triple {18166#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,347 INFO L290 TraceCheckUtils]: 61: Hoare triple {18166#(<= ~counter~0 3)} ~cond := #in~cond; {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,347 INFO L290 TraceCheckUtils]: 62: Hoare triple {18166#(<= ~counter~0 3)} assume !(0 == ~cond); {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,347 INFO L290 TraceCheckUtils]: 63: Hoare triple {18166#(<= ~counter~0 3)} assume true; {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,347 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {18166#(<= ~counter~0 3)} {18166#(<= ~counter~0 3)} #86#return; {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,348 INFO L290 TraceCheckUtils]: 65: Hoare triple {18166#(<= ~counter~0 3)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18166#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:31,348 INFO L290 TraceCheckUtils]: 66: Hoare triple {18166#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,348 INFO L290 TraceCheckUtils]: 67: Hoare triple {18221#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,349 INFO L272 TraceCheckUtils]: 68: Hoare triple {18221#(<= ~counter~0 4)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,349 INFO L290 TraceCheckUtils]: 69: Hoare triple {18221#(<= ~counter~0 4)} ~cond := #in~cond; {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,349 INFO L290 TraceCheckUtils]: 70: Hoare triple {18221#(<= ~counter~0 4)} assume !(0 == ~cond); {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,349 INFO L290 TraceCheckUtils]: 71: Hoare triple {18221#(<= ~counter~0 4)} assume true; {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,350 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {18221#(<= ~counter~0 4)} {18221#(<= ~counter~0 4)} #82#return; {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,350 INFO L272 TraceCheckUtils]: 73: Hoare triple {18221#(<= ~counter~0 4)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,350 INFO L290 TraceCheckUtils]: 74: Hoare triple {18221#(<= ~counter~0 4)} ~cond := #in~cond; {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,350 INFO L290 TraceCheckUtils]: 75: Hoare triple {18221#(<= ~counter~0 4)} assume !(0 == ~cond); {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,351 INFO L290 TraceCheckUtils]: 76: Hoare triple {18221#(<= ~counter~0 4)} assume true; {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,351 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {18221#(<= ~counter~0 4)} {18221#(<= ~counter~0 4)} #84#return; {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,351 INFO L272 TraceCheckUtils]: 78: Hoare triple {18221#(<= ~counter~0 4)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,352 INFO L290 TraceCheckUtils]: 79: Hoare triple {18221#(<= ~counter~0 4)} ~cond := #in~cond; {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,352 INFO L290 TraceCheckUtils]: 80: Hoare triple {18221#(<= ~counter~0 4)} assume !(0 == ~cond); {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,352 INFO L290 TraceCheckUtils]: 81: Hoare triple {18221#(<= ~counter~0 4)} assume true; {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,352 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {18221#(<= ~counter~0 4)} {18221#(<= ~counter~0 4)} #86#return; {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,353 INFO L290 TraceCheckUtils]: 83: Hoare triple {18221#(<= ~counter~0 4)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18221#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:31,353 INFO L290 TraceCheckUtils]: 84: Hoare triple {18221#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18276#(<= |main_#t~post6| 4)} is VALID [2022-04-15 09:22:31,353 INFO L290 TraceCheckUtils]: 85: Hoare triple {18276#(<= |main_#t~post6| 4)} assume !(#t~post6 < 10);havoc #t~post6; {18015#false} is VALID [2022-04-15 09:22:31,353 INFO L290 TraceCheckUtils]: 86: Hoare triple {18015#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18015#false} is VALID [2022-04-15 09:22:31,353 INFO L290 TraceCheckUtils]: 87: Hoare triple {18015#false} assume !(#t~post7 < 10);havoc #t~post7; {18015#false} is VALID [2022-04-15 09:22:31,353 INFO L272 TraceCheckUtils]: 88: Hoare triple {18015#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {18015#false} is VALID [2022-04-15 09:22:31,354 INFO L290 TraceCheckUtils]: 89: Hoare triple {18015#false} ~cond := #in~cond; {18015#false} is VALID [2022-04-15 09:22:31,354 INFO L290 TraceCheckUtils]: 90: Hoare triple {18015#false} assume !(0 == ~cond); {18015#false} is VALID [2022-04-15 09:22:31,354 INFO L290 TraceCheckUtils]: 91: Hoare triple {18015#false} assume true; {18015#false} is VALID [2022-04-15 09:22:31,354 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {18015#false} {18015#false} #92#return; {18015#false} is VALID [2022-04-15 09:22:31,354 INFO L272 TraceCheckUtils]: 93: Hoare triple {18015#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {18015#false} is VALID [2022-04-15 09:22:31,354 INFO L290 TraceCheckUtils]: 94: Hoare triple {18015#false} ~cond := #in~cond; {18015#false} is VALID [2022-04-15 09:22:31,354 INFO L290 TraceCheckUtils]: 95: Hoare triple {18015#false} assume 0 == ~cond; {18015#false} is VALID [2022-04-15 09:22:31,354 INFO L290 TraceCheckUtils]: 96: Hoare triple {18015#false} assume !false; {18015#false} is VALID [2022-04-15 09:22:31,354 INFO L134 CoverageAnalysis]: Checked inductivity of 382 backedges. 72 proven. 260 refuted. 0 times theorem prover too weak. 50 trivial. 0 not checked. [2022-04-15 09:22:31,354 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:22:31,668 INFO L290 TraceCheckUtils]: 96: Hoare triple {18015#false} assume !false; {18015#false} is VALID [2022-04-15 09:22:31,668 INFO L290 TraceCheckUtils]: 95: Hoare triple {18015#false} assume 0 == ~cond; {18015#false} is VALID [2022-04-15 09:22:31,668 INFO L290 TraceCheckUtils]: 94: Hoare triple {18015#false} ~cond := #in~cond; {18015#false} is VALID [2022-04-15 09:22:31,668 INFO L272 TraceCheckUtils]: 93: Hoare triple {18015#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {18015#false} is VALID [2022-04-15 09:22:31,668 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {18014#true} {18015#false} #92#return; {18015#false} is VALID [2022-04-15 09:22:31,668 INFO L290 TraceCheckUtils]: 91: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-15 09:22:31,668 INFO L290 TraceCheckUtils]: 90: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-15 09:22:31,668 INFO L290 TraceCheckUtils]: 89: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-15 09:22:31,668 INFO L272 TraceCheckUtils]: 88: Hoare triple {18015#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {18014#true} is VALID [2022-04-15 09:22:31,668 INFO L290 TraceCheckUtils]: 87: Hoare triple {18015#false} assume !(#t~post7 < 10);havoc #t~post7; {18015#false} is VALID [2022-04-15 09:22:31,668 INFO L290 TraceCheckUtils]: 86: Hoare triple {18015#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18015#false} is VALID [2022-04-15 09:22:31,669 INFO L290 TraceCheckUtils]: 85: Hoare triple {18346#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {18015#false} is VALID [2022-04-15 09:22:31,669 INFO L290 TraceCheckUtils]: 84: Hoare triple {18350#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18346#(< |main_#t~post6| 10)} is VALID [2022-04-15 09:22:31,669 INFO L290 TraceCheckUtils]: 83: Hoare triple {18350#(< ~counter~0 10)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18350#(< ~counter~0 10)} is VALID [2022-04-15 09:22:31,669 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {18014#true} {18350#(< ~counter~0 10)} #86#return; {18350#(< ~counter~0 10)} is VALID [2022-04-15 09:22:31,670 INFO L290 TraceCheckUtils]: 81: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-15 09:22:31,670 INFO L290 TraceCheckUtils]: 80: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-15 09:22:31,670 INFO L290 TraceCheckUtils]: 79: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-15 09:22:31,670 INFO L272 TraceCheckUtils]: 78: Hoare triple {18350#(< ~counter~0 10)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18014#true} is VALID [2022-04-15 09:22:31,670 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {18014#true} {18350#(< ~counter~0 10)} #84#return; {18350#(< ~counter~0 10)} is VALID [2022-04-15 09:22:31,670 INFO L290 TraceCheckUtils]: 76: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-15 09:22:31,670 INFO L290 TraceCheckUtils]: 75: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-15 09:22:31,670 INFO L290 TraceCheckUtils]: 74: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-15 09:22:31,670 INFO L272 TraceCheckUtils]: 73: Hoare triple {18350#(< ~counter~0 10)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18014#true} is VALID [2022-04-15 09:22:31,671 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {18014#true} {18350#(< ~counter~0 10)} #82#return; {18350#(< ~counter~0 10)} is VALID [2022-04-15 09:22:31,671 INFO L290 TraceCheckUtils]: 71: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-15 09:22:31,671 INFO L290 TraceCheckUtils]: 70: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-15 09:22:31,671 INFO L290 TraceCheckUtils]: 69: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-15 09:22:31,671 INFO L272 TraceCheckUtils]: 68: Hoare triple {18350#(< ~counter~0 10)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18014#true} is VALID [2022-04-15 09:22:31,673 INFO L290 TraceCheckUtils]: 67: Hoare triple {18350#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {18350#(< ~counter~0 10)} is VALID [2022-04-15 09:22:31,674 INFO L290 TraceCheckUtils]: 66: Hoare triple {18405#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18350#(< ~counter~0 10)} is VALID [2022-04-15 09:22:31,674 INFO L290 TraceCheckUtils]: 65: Hoare triple {18405#(< ~counter~0 9)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18405#(< ~counter~0 9)} is VALID [2022-04-15 09:22:31,675 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {18014#true} {18405#(< ~counter~0 9)} #86#return; {18405#(< ~counter~0 9)} is VALID [2022-04-15 09:22:31,675 INFO L290 TraceCheckUtils]: 63: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-15 09:22:31,675 INFO L290 TraceCheckUtils]: 62: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-15 09:22:31,675 INFO L290 TraceCheckUtils]: 61: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-15 09:22:31,675 INFO L272 TraceCheckUtils]: 60: Hoare triple {18405#(< ~counter~0 9)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18014#true} is VALID [2022-04-15 09:22:31,675 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {18014#true} {18405#(< ~counter~0 9)} #84#return; {18405#(< ~counter~0 9)} is VALID [2022-04-15 09:22:31,675 INFO L290 TraceCheckUtils]: 58: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-15 09:22:31,675 INFO L290 TraceCheckUtils]: 57: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-15 09:22:31,675 INFO L290 TraceCheckUtils]: 56: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-15 09:22:31,675 INFO L272 TraceCheckUtils]: 55: Hoare triple {18405#(< ~counter~0 9)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18014#true} is VALID [2022-04-15 09:22:31,676 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {18014#true} {18405#(< ~counter~0 9)} #82#return; {18405#(< ~counter~0 9)} is VALID [2022-04-15 09:22:31,676 INFO L290 TraceCheckUtils]: 53: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-15 09:22:31,676 INFO L290 TraceCheckUtils]: 52: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-15 09:22:31,676 INFO L290 TraceCheckUtils]: 51: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-15 09:22:31,676 INFO L272 TraceCheckUtils]: 50: Hoare triple {18405#(< ~counter~0 9)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18014#true} is VALID [2022-04-15 09:22:31,676 INFO L290 TraceCheckUtils]: 49: Hoare triple {18405#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {18405#(< ~counter~0 9)} is VALID [2022-04-15 09:22:31,677 INFO L290 TraceCheckUtils]: 48: Hoare triple {18460#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18405#(< ~counter~0 9)} is VALID [2022-04-15 09:22:31,677 INFO L290 TraceCheckUtils]: 47: Hoare triple {18460#(< ~counter~0 8)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18460#(< ~counter~0 8)} is VALID [2022-04-15 09:22:31,677 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {18014#true} {18460#(< ~counter~0 8)} #86#return; {18460#(< ~counter~0 8)} is VALID [2022-04-15 09:22:31,677 INFO L290 TraceCheckUtils]: 45: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-15 09:22:31,677 INFO L290 TraceCheckUtils]: 44: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-15 09:22:31,677 INFO L290 TraceCheckUtils]: 43: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-15 09:22:31,677 INFO L272 TraceCheckUtils]: 42: Hoare triple {18460#(< ~counter~0 8)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18014#true} is VALID [2022-04-15 09:22:31,678 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {18014#true} {18460#(< ~counter~0 8)} #84#return; {18460#(< ~counter~0 8)} is VALID [2022-04-15 09:22:31,678 INFO L290 TraceCheckUtils]: 40: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-15 09:22:31,678 INFO L290 TraceCheckUtils]: 39: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-15 09:22:31,678 INFO L290 TraceCheckUtils]: 38: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-15 09:22:31,678 INFO L272 TraceCheckUtils]: 37: Hoare triple {18460#(< ~counter~0 8)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18014#true} is VALID [2022-04-15 09:22:31,678 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {18014#true} {18460#(< ~counter~0 8)} #82#return; {18460#(< ~counter~0 8)} is VALID [2022-04-15 09:22:31,678 INFO L290 TraceCheckUtils]: 35: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-15 09:22:31,678 INFO L290 TraceCheckUtils]: 34: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-15 09:22:31,678 INFO L290 TraceCheckUtils]: 33: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-15 09:22:31,679 INFO L272 TraceCheckUtils]: 32: Hoare triple {18460#(< ~counter~0 8)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18014#true} is VALID [2022-04-15 09:22:31,679 INFO L290 TraceCheckUtils]: 31: Hoare triple {18460#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {18460#(< ~counter~0 8)} is VALID [2022-04-15 09:22:31,679 INFO L290 TraceCheckUtils]: 30: Hoare triple {18515#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18460#(< ~counter~0 8)} is VALID [2022-04-15 09:22:31,679 INFO L290 TraceCheckUtils]: 29: Hoare triple {18515#(< ~counter~0 7)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18515#(< ~counter~0 7)} is VALID [2022-04-15 09:22:31,680 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {18014#true} {18515#(< ~counter~0 7)} #86#return; {18515#(< ~counter~0 7)} is VALID [2022-04-15 09:22:31,680 INFO L290 TraceCheckUtils]: 27: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-15 09:22:31,680 INFO L290 TraceCheckUtils]: 26: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-15 09:22:31,680 INFO L290 TraceCheckUtils]: 25: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-15 09:22:31,680 INFO L272 TraceCheckUtils]: 24: Hoare triple {18515#(< ~counter~0 7)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18014#true} is VALID [2022-04-15 09:22:31,680 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {18014#true} {18515#(< ~counter~0 7)} #84#return; {18515#(< ~counter~0 7)} is VALID [2022-04-15 09:22:31,680 INFO L290 TraceCheckUtils]: 22: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-15 09:22:31,680 INFO L290 TraceCheckUtils]: 21: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-15 09:22:31,681 INFO L290 TraceCheckUtils]: 20: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-15 09:22:31,681 INFO L272 TraceCheckUtils]: 19: Hoare triple {18515#(< ~counter~0 7)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18014#true} is VALID [2022-04-15 09:22:31,681 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {18014#true} {18515#(< ~counter~0 7)} #82#return; {18515#(< ~counter~0 7)} is VALID [2022-04-15 09:22:31,681 INFO L290 TraceCheckUtils]: 17: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-15 09:22:31,681 INFO L290 TraceCheckUtils]: 16: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-15 09:22:31,681 INFO L290 TraceCheckUtils]: 15: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-15 09:22:31,681 INFO L272 TraceCheckUtils]: 14: Hoare triple {18515#(< ~counter~0 7)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18014#true} is VALID [2022-04-15 09:22:31,683 INFO L290 TraceCheckUtils]: 13: Hoare triple {18515#(< ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {18515#(< ~counter~0 7)} is VALID [2022-04-15 09:22:31,683 INFO L290 TraceCheckUtils]: 12: Hoare triple {18570#(< ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18515#(< ~counter~0 7)} is VALID [2022-04-15 09:22:31,683 INFO L290 TraceCheckUtils]: 11: Hoare triple {18570#(< ~counter~0 6)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {18570#(< ~counter~0 6)} is VALID [2022-04-15 09:22:31,684 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18014#true} {18570#(< ~counter~0 6)} #80#return; {18570#(< ~counter~0 6)} is VALID [2022-04-15 09:22:31,684 INFO L290 TraceCheckUtils]: 9: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-15 09:22:31,684 INFO L290 TraceCheckUtils]: 8: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-15 09:22:31,684 INFO L290 TraceCheckUtils]: 7: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-15 09:22:31,684 INFO L272 TraceCheckUtils]: 6: Hoare triple {18570#(< ~counter~0 6)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {18014#true} is VALID [2022-04-15 09:22:31,684 INFO L290 TraceCheckUtils]: 5: Hoare triple {18570#(< ~counter~0 6)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {18570#(< ~counter~0 6)} is VALID [2022-04-15 09:22:31,684 INFO L272 TraceCheckUtils]: 4: Hoare triple {18570#(< ~counter~0 6)} call #t~ret8 := main(); {18570#(< ~counter~0 6)} is VALID [2022-04-15 09:22:31,685 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18570#(< ~counter~0 6)} {18014#true} #96#return; {18570#(< ~counter~0 6)} is VALID [2022-04-15 09:22:31,685 INFO L290 TraceCheckUtils]: 2: Hoare triple {18570#(< ~counter~0 6)} assume true; {18570#(< ~counter~0 6)} is VALID [2022-04-15 09:22:31,685 INFO L290 TraceCheckUtils]: 1: Hoare triple {18014#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {18570#(< ~counter~0 6)} is VALID [2022-04-15 09:22:31,685 INFO L272 TraceCheckUtils]: 0: Hoare triple {18014#true} call ULTIMATE.init(); {18014#true} is VALID [2022-04-15 09:22:31,686 INFO L134 CoverageAnalysis]: Checked inductivity of 382 backedges. 26 proven. 44 refuted. 0 times theorem prover too weak. 312 trivial. 0 not checked. [2022-04-15 09:22:31,686 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:22:31,686 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [501130390] [2022-04-15 09:22:31,686 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:22:31,686 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2032453996] [2022-04-15 09:22:31,686 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2032453996] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:22:31,686 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:22:31,686 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-15 09:22:31,686 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:22:31,686 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1079987616] [2022-04-15 09:22:31,686 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1079987616] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:22:31,686 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:22:31,686 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 09:22:31,686 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1683828766] [2022-04-15 09:22:31,686 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:22:31,687 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (17), 7 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 97 [2022-04-15 09:22:31,687 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:22:31,687 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (17), 7 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:22:31,736 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:31,736 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 09:22:31,736 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:22:31,736 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 09:22:31,736 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-15 09:22:31,736 INFO L87 Difference]: Start difference. First operand 205 states and 243 transitions. Second operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (17), 7 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:22:32,358 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:32,358 INFO L93 Difference]: Finished difference Result 266 states and 328 transitions. [2022-04-15 09:22:32,358 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 09:22:32,358 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (17), 7 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 97 [2022-04-15 09:22:32,358 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:22:32,358 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (17), 7 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:22:32,359 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 124 transitions. [2022-04-15 09:22:32,359 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (17), 7 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:22:32,360 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 124 transitions. [2022-04-15 09:22:32,361 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 124 transitions. [2022-04-15 09:22:32,453 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:32,456 INFO L225 Difference]: With dead ends: 266 [2022-04-15 09:22:32,456 INFO L226 Difference]: Without dead ends: 207 [2022-04-15 09:22:32,457 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 197 GetRequests, 181 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=123, Invalid=183, Unknown=0, NotChecked=0, Total=306 [2022-04-15 09:22:32,457 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 22 mSDsluCounter, 153 mSDsCounter, 0 mSdLazyCounter, 69 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 206 SdHoareTripleChecker+Invalid, 80 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 69 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 09:22:32,457 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 206 Invalid, 80 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 69 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 09:22:32,458 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 207 states. [2022-04-15 09:22:32,607 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 207 to 207. [2022-04-15 09:22:32,607 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:22:32,607 INFO L82 GeneralOperation]: Start isEquivalent. First operand 207 states. Second operand has 207 states, 136 states have (on average 1.1691176470588236) internal successors, (159), 145 states have internal predecessors, (159), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-15 09:22:32,607 INFO L74 IsIncluded]: Start isIncluded. First operand 207 states. Second operand has 207 states, 136 states have (on average 1.1691176470588236) internal successors, (159), 145 states have internal predecessors, (159), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-15 09:22:32,608 INFO L87 Difference]: Start difference. First operand 207 states. Second operand has 207 states, 136 states have (on average 1.1691176470588236) internal successors, (159), 145 states have internal predecessors, (159), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-15 09:22:32,611 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:32,611 INFO L93 Difference]: Finished difference Result 207 states and 245 transitions. [2022-04-15 09:22:32,611 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 245 transitions. [2022-04-15 09:22:32,611 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:22:32,611 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:22:32,611 INFO L74 IsIncluded]: Start isIncluded. First operand has 207 states, 136 states have (on average 1.1691176470588236) internal successors, (159), 145 states have internal predecessors, (159), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) Second operand 207 states. [2022-04-15 09:22:32,611 INFO L87 Difference]: Start difference. First operand has 207 states, 136 states have (on average 1.1691176470588236) internal successors, (159), 145 states have internal predecessors, (159), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) Second operand 207 states. [2022-04-15 09:22:32,614 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:32,614 INFO L93 Difference]: Finished difference Result 207 states and 245 transitions. [2022-04-15 09:22:32,614 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 245 transitions. [2022-04-15 09:22:32,615 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:22:32,615 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:22:32,615 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:22:32,615 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:22:32,615 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 207 states, 136 states have (on average 1.1691176470588236) internal successors, (159), 145 states have internal predecessors, (159), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-15 09:22:32,618 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 207 states to 207 states and 245 transitions. [2022-04-15 09:22:32,618 INFO L78 Accepts]: Start accepts. Automaton has 207 states and 245 transitions. Word has length 97 [2022-04-15 09:22:32,618 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:22:32,618 INFO L478 AbstractCegarLoop]: Abstraction has 207 states and 245 transitions. [2022-04-15 09:22:32,618 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (17), 7 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:22:32,618 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 207 states and 245 transitions. [2022-04-15 09:22:34,930 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 245 edges. 244 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:34,930 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 245 transitions. [2022-04-15 09:22:34,931 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 101 [2022-04-15 09:22:34,931 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:22:34,931 INFO L499 BasicCegarLoop]: trace histogram [14, 13, 13, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:22:34,947 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-04-15 09:22:35,147 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:22:35,147 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:22:35,147 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:22:35,147 INFO L85 PathProgramCache]: Analyzing trace with hash -545719131, now seen corresponding path program 5 times [2022-04-15 09:22:35,147 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:22:35,147 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [801673895] [2022-04-15 09:22:40,688 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:22:40,688 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:22:40,688 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:22:40,688 INFO L85 PathProgramCache]: Analyzing trace with hash -545719131, now seen corresponding path program 6 times [2022-04-15 09:22:40,688 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:22:40,689 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1486857968] [2022-04-15 09:22:40,689 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:22:40,689 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:22:40,698 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:22:40,698 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1426687400] [2022-04-15 09:22:40,698 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 09:22:40,698 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:22:40,698 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:22:40,701 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:22:40,702 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-04-15 09:22:40,838 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-15 09:22:40,838 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:22:40,839 INFO L263 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-15 09:22:40,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:22:40,858 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:22:41,249 INFO L272 TraceCheckUtils]: 0: Hoare triple {19977#true} call ULTIMATE.init(); {19977#true} is VALID [2022-04-15 09:22:41,250 INFO L290 TraceCheckUtils]: 1: Hoare triple {19977#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {19985#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:41,250 INFO L290 TraceCheckUtils]: 2: Hoare triple {19985#(<= ~counter~0 0)} assume true; {19985#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:41,250 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19985#(<= ~counter~0 0)} {19977#true} #96#return; {19985#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:41,250 INFO L272 TraceCheckUtils]: 4: Hoare triple {19985#(<= ~counter~0 0)} call #t~ret8 := main(); {19985#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:41,251 INFO L290 TraceCheckUtils]: 5: Hoare triple {19985#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {19985#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:41,251 INFO L272 TraceCheckUtils]: 6: Hoare triple {19985#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {19985#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:41,251 INFO L290 TraceCheckUtils]: 7: Hoare triple {19985#(<= ~counter~0 0)} ~cond := #in~cond; {19985#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:41,252 INFO L290 TraceCheckUtils]: 8: Hoare triple {19985#(<= ~counter~0 0)} assume !(0 == ~cond); {19985#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:41,252 INFO L290 TraceCheckUtils]: 9: Hoare triple {19985#(<= ~counter~0 0)} assume true; {19985#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:41,252 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19985#(<= ~counter~0 0)} {19985#(<= ~counter~0 0)} #80#return; {19985#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:41,252 INFO L290 TraceCheckUtils]: 11: Hoare triple {19985#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {19985#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:41,253 INFO L290 TraceCheckUtils]: 12: Hoare triple {19985#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,253 INFO L290 TraceCheckUtils]: 13: Hoare triple {20019#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,254 INFO L272 TraceCheckUtils]: 14: Hoare triple {20019#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,254 INFO L290 TraceCheckUtils]: 15: Hoare triple {20019#(<= ~counter~0 1)} ~cond := #in~cond; {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,254 INFO L290 TraceCheckUtils]: 16: Hoare triple {20019#(<= ~counter~0 1)} assume !(0 == ~cond); {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,254 INFO L290 TraceCheckUtils]: 17: Hoare triple {20019#(<= ~counter~0 1)} assume true; {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,255 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {20019#(<= ~counter~0 1)} {20019#(<= ~counter~0 1)} #82#return; {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,255 INFO L272 TraceCheckUtils]: 19: Hoare triple {20019#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,256 INFO L290 TraceCheckUtils]: 20: Hoare triple {20019#(<= ~counter~0 1)} ~cond := #in~cond; {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,256 INFO L290 TraceCheckUtils]: 21: Hoare triple {20019#(<= ~counter~0 1)} assume !(0 == ~cond); {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,256 INFO L290 TraceCheckUtils]: 22: Hoare triple {20019#(<= ~counter~0 1)} assume true; {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,256 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {20019#(<= ~counter~0 1)} {20019#(<= ~counter~0 1)} #84#return; {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,257 INFO L272 TraceCheckUtils]: 24: Hoare triple {20019#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,257 INFO L290 TraceCheckUtils]: 25: Hoare triple {20019#(<= ~counter~0 1)} ~cond := #in~cond; {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,257 INFO L290 TraceCheckUtils]: 26: Hoare triple {20019#(<= ~counter~0 1)} assume !(0 == ~cond); {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,258 INFO L290 TraceCheckUtils]: 27: Hoare triple {20019#(<= ~counter~0 1)} assume true; {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,258 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {20019#(<= ~counter~0 1)} {20019#(<= ~counter~0 1)} #86#return; {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,258 INFO L290 TraceCheckUtils]: 29: Hoare triple {20019#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {20019#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:41,259 INFO L290 TraceCheckUtils]: 30: Hoare triple {20019#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,259 INFO L290 TraceCheckUtils]: 31: Hoare triple {20074#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,259 INFO L272 TraceCheckUtils]: 32: Hoare triple {20074#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,260 INFO L290 TraceCheckUtils]: 33: Hoare triple {20074#(<= ~counter~0 2)} ~cond := #in~cond; {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,260 INFO L290 TraceCheckUtils]: 34: Hoare triple {20074#(<= ~counter~0 2)} assume !(0 == ~cond); {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,260 INFO L290 TraceCheckUtils]: 35: Hoare triple {20074#(<= ~counter~0 2)} assume true; {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,261 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {20074#(<= ~counter~0 2)} {20074#(<= ~counter~0 2)} #82#return; {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,261 INFO L272 TraceCheckUtils]: 37: Hoare triple {20074#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,261 INFO L290 TraceCheckUtils]: 38: Hoare triple {20074#(<= ~counter~0 2)} ~cond := #in~cond; {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,262 INFO L290 TraceCheckUtils]: 39: Hoare triple {20074#(<= ~counter~0 2)} assume !(0 == ~cond); {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,262 INFO L290 TraceCheckUtils]: 40: Hoare triple {20074#(<= ~counter~0 2)} assume true; {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,262 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {20074#(<= ~counter~0 2)} {20074#(<= ~counter~0 2)} #84#return; {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,263 INFO L272 TraceCheckUtils]: 42: Hoare triple {20074#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,263 INFO L290 TraceCheckUtils]: 43: Hoare triple {20074#(<= ~counter~0 2)} ~cond := #in~cond; {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,263 INFO L290 TraceCheckUtils]: 44: Hoare triple {20074#(<= ~counter~0 2)} assume !(0 == ~cond); {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,263 INFO L290 TraceCheckUtils]: 45: Hoare triple {20074#(<= ~counter~0 2)} assume true; {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,264 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {20074#(<= ~counter~0 2)} {20074#(<= ~counter~0 2)} #86#return; {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,264 INFO L290 TraceCheckUtils]: 47: Hoare triple {20074#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {20074#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:41,265 INFO L290 TraceCheckUtils]: 48: Hoare triple {20074#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,265 INFO L290 TraceCheckUtils]: 49: Hoare triple {20129#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,265 INFO L272 TraceCheckUtils]: 50: Hoare triple {20129#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,265 INFO L290 TraceCheckUtils]: 51: Hoare triple {20129#(<= ~counter~0 3)} ~cond := #in~cond; {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,266 INFO L290 TraceCheckUtils]: 52: Hoare triple {20129#(<= ~counter~0 3)} assume !(0 == ~cond); {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,266 INFO L290 TraceCheckUtils]: 53: Hoare triple {20129#(<= ~counter~0 3)} assume true; {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,266 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {20129#(<= ~counter~0 3)} {20129#(<= ~counter~0 3)} #82#return; {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,267 INFO L272 TraceCheckUtils]: 55: Hoare triple {20129#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,267 INFO L290 TraceCheckUtils]: 56: Hoare triple {20129#(<= ~counter~0 3)} ~cond := #in~cond; {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,267 INFO L290 TraceCheckUtils]: 57: Hoare triple {20129#(<= ~counter~0 3)} assume !(0 == ~cond); {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,268 INFO L290 TraceCheckUtils]: 58: Hoare triple {20129#(<= ~counter~0 3)} assume true; {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,268 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {20129#(<= ~counter~0 3)} {20129#(<= ~counter~0 3)} #84#return; {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,268 INFO L272 TraceCheckUtils]: 60: Hoare triple {20129#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,269 INFO L290 TraceCheckUtils]: 61: Hoare triple {20129#(<= ~counter~0 3)} ~cond := #in~cond; {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,269 INFO L290 TraceCheckUtils]: 62: Hoare triple {20129#(<= ~counter~0 3)} assume !(0 == ~cond); {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,269 INFO L290 TraceCheckUtils]: 63: Hoare triple {20129#(<= ~counter~0 3)} assume true; {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,270 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {20129#(<= ~counter~0 3)} {20129#(<= ~counter~0 3)} #86#return; {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,270 INFO L290 TraceCheckUtils]: 65: Hoare triple {20129#(<= ~counter~0 3)} assume !(~r~0 >= ~d~0); {20129#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:41,270 INFO L290 TraceCheckUtils]: 66: Hoare triple {20129#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,271 INFO L290 TraceCheckUtils]: 67: Hoare triple {20184#(<= ~counter~0 4)} assume !!(#t~post7 < 10);havoc #t~post7; {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,271 INFO L272 TraceCheckUtils]: 68: Hoare triple {20184#(<= ~counter~0 4)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,271 INFO L290 TraceCheckUtils]: 69: Hoare triple {20184#(<= ~counter~0 4)} ~cond := #in~cond; {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,272 INFO L290 TraceCheckUtils]: 70: Hoare triple {20184#(<= ~counter~0 4)} assume !(0 == ~cond); {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,272 INFO L290 TraceCheckUtils]: 71: Hoare triple {20184#(<= ~counter~0 4)} assume true; {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,272 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {20184#(<= ~counter~0 4)} {20184#(<= ~counter~0 4)} #88#return; {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,273 INFO L272 TraceCheckUtils]: 73: Hoare triple {20184#(<= ~counter~0 4)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,273 INFO L290 TraceCheckUtils]: 74: Hoare triple {20184#(<= ~counter~0 4)} ~cond := #in~cond; {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,273 INFO L290 TraceCheckUtils]: 75: Hoare triple {20184#(<= ~counter~0 4)} assume !(0 == ~cond); {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,274 INFO L290 TraceCheckUtils]: 76: Hoare triple {20184#(<= ~counter~0 4)} assume true; {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,274 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {20184#(<= ~counter~0 4)} {20184#(<= ~counter~0 4)} #90#return; {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,274 INFO L290 TraceCheckUtils]: 78: Hoare triple {20184#(<= ~counter~0 4)} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,275 INFO L290 TraceCheckUtils]: 79: Hoare triple {20184#(<= ~counter~0 4)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,275 INFO L290 TraceCheckUtils]: 80: Hoare triple {20184#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,275 INFO L290 TraceCheckUtils]: 81: Hoare triple {20227#(<= ~counter~0 5)} assume !!(#t~post7 < 10);havoc #t~post7; {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,276 INFO L272 TraceCheckUtils]: 82: Hoare triple {20227#(<= ~counter~0 5)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,276 INFO L290 TraceCheckUtils]: 83: Hoare triple {20227#(<= ~counter~0 5)} ~cond := #in~cond; {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,276 INFO L290 TraceCheckUtils]: 84: Hoare triple {20227#(<= ~counter~0 5)} assume !(0 == ~cond); {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,277 INFO L290 TraceCheckUtils]: 85: Hoare triple {20227#(<= ~counter~0 5)} assume true; {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,277 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {20227#(<= ~counter~0 5)} {20227#(<= ~counter~0 5)} #88#return; {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,278 INFO L272 TraceCheckUtils]: 87: Hoare triple {20227#(<= ~counter~0 5)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,278 INFO L290 TraceCheckUtils]: 88: Hoare triple {20227#(<= ~counter~0 5)} ~cond := #in~cond; {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,278 INFO L290 TraceCheckUtils]: 89: Hoare triple {20227#(<= ~counter~0 5)} assume !(0 == ~cond); {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,278 INFO L290 TraceCheckUtils]: 90: Hoare triple {20227#(<= ~counter~0 5)} assume true; {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,279 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {20227#(<= ~counter~0 5)} {20227#(<= ~counter~0 5)} #90#return; {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,279 INFO L290 TraceCheckUtils]: 92: Hoare triple {20227#(<= ~counter~0 5)} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,279 INFO L290 TraceCheckUtils]: 93: Hoare triple {20227#(<= ~counter~0 5)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,280 INFO L290 TraceCheckUtils]: 94: Hoare triple {20227#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20270#(<= |main_#t~post7| 5)} is VALID [2022-04-15 09:22:41,280 INFO L290 TraceCheckUtils]: 95: Hoare triple {20270#(<= |main_#t~post7| 5)} assume !(#t~post7 < 10);havoc #t~post7; {19978#false} is VALID [2022-04-15 09:22:41,280 INFO L272 TraceCheckUtils]: 96: Hoare triple {19978#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {19978#false} is VALID [2022-04-15 09:22:41,280 INFO L290 TraceCheckUtils]: 97: Hoare triple {19978#false} ~cond := #in~cond; {19978#false} is VALID [2022-04-15 09:22:41,280 INFO L290 TraceCheckUtils]: 98: Hoare triple {19978#false} assume 0 == ~cond; {19978#false} is VALID [2022-04-15 09:22:41,280 INFO L290 TraceCheckUtils]: 99: Hoare triple {19978#false} assume !false; {19978#false} is VALID [2022-04-15 09:22:41,280 INFO L134 CoverageAnalysis]: Checked inductivity of 366 backedges. 26 proven. 296 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-15 09:22:41,281 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:22:41,671 INFO L290 TraceCheckUtils]: 99: Hoare triple {19978#false} assume !false; {19978#false} is VALID [2022-04-15 09:22:41,672 INFO L290 TraceCheckUtils]: 98: Hoare triple {19978#false} assume 0 == ~cond; {19978#false} is VALID [2022-04-15 09:22:41,672 INFO L290 TraceCheckUtils]: 97: Hoare triple {19978#false} ~cond := #in~cond; {19978#false} is VALID [2022-04-15 09:22:41,672 INFO L272 TraceCheckUtils]: 96: Hoare triple {19978#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {19978#false} is VALID [2022-04-15 09:22:41,672 INFO L290 TraceCheckUtils]: 95: Hoare triple {20298#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {19978#false} is VALID [2022-04-15 09:22:41,672 INFO L290 TraceCheckUtils]: 94: Hoare triple {20302#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20298#(< |main_#t~post7| 10)} is VALID [2022-04-15 09:22:41,673 INFO L290 TraceCheckUtils]: 93: Hoare triple {20302#(< ~counter~0 10)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {20302#(< ~counter~0 10)} is VALID [2022-04-15 09:22:41,673 INFO L290 TraceCheckUtils]: 92: Hoare triple {20302#(< ~counter~0 10)} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {20302#(< ~counter~0 10)} is VALID [2022-04-15 09:22:41,673 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {19977#true} {20302#(< ~counter~0 10)} #90#return; {20302#(< ~counter~0 10)} is VALID [2022-04-15 09:22:41,673 INFO L290 TraceCheckUtils]: 90: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-15 09:22:41,673 INFO L290 TraceCheckUtils]: 89: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-15 09:22:41,674 INFO L290 TraceCheckUtils]: 88: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-15 09:22:41,674 INFO L272 TraceCheckUtils]: 87: Hoare triple {20302#(< ~counter~0 10)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19977#true} is VALID [2022-04-15 09:22:41,674 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {19977#true} {20302#(< ~counter~0 10)} #88#return; {20302#(< ~counter~0 10)} is VALID [2022-04-15 09:22:41,674 INFO L290 TraceCheckUtils]: 85: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-15 09:22:41,674 INFO L290 TraceCheckUtils]: 84: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-15 09:22:41,674 INFO L290 TraceCheckUtils]: 83: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-15 09:22:41,674 INFO L272 TraceCheckUtils]: 82: Hoare triple {20302#(< ~counter~0 10)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {19977#true} is VALID [2022-04-15 09:22:41,675 INFO L290 TraceCheckUtils]: 81: Hoare triple {20302#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {20302#(< ~counter~0 10)} is VALID [2022-04-15 09:22:41,675 INFO L290 TraceCheckUtils]: 80: Hoare triple {20345#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20302#(< ~counter~0 10)} is VALID [2022-04-15 09:22:41,675 INFO L290 TraceCheckUtils]: 79: Hoare triple {20345#(< ~counter~0 9)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {20345#(< ~counter~0 9)} is VALID [2022-04-15 09:22:41,676 INFO L290 TraceCheckUtils]: 78: Hoare triple {20345#(< ~counter~0 9)} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {20345#(< ~counter~0 9)} is VALID [2022-04-15 09:22:41,676 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {19977#true} {20345#(< ~counter~0 9)} #90#return; {20345#(< ~counter~0 9)} is VALID [2022-04-15 09:22:41,676 INFO L290 TraceCheckUtils]: 76: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-15 09:22:41,676 INFO L290 TraceCheckUtils]: 75: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-15 09:22:41,676 INFO L290 TraceCheckUtils]: 74: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-15 09:22:41,676 INFO L272 TraceCheckUtils]: 73: Hoare triple {20345#(< ~counter~0 9)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19977#true} is VALID [2022-04-15 09:22:41,677 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {19977#true} {20345#(< ~counter~0 9)} #88#return; {20345#(< ~counter~0 9)} is VALID [2022-04-15 09:22:41,677 INFO L290 TraceCheckUtils]: 71: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-15 09:22:41,677 INFO L290 TraceCheckUtils]: 70: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-15 09:22:41,677 INFO L290 TraceCheckUtils]: 69: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-15 09:22:41,677 INFO L272 TraceCheckUtils]: 68: Hoare triple {20345#(< ~counter~0 9)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {19977#true} is VALID [2022-04-15 09:22:41,677 INFO L290 TraceCheckUtils]: 67: Hoare triple {20345#(< ~counter~0 9)} assume !!(#t~post7 < 10);havoc #t~post7; {20345#(< ~counter~0 9)} is VALID [2022-04-15 09:22:41,678 INFO L290 TraceCheckUtils]: 66: Hoare triple {20388#(< ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20345#(< ~counter~0 9)} is VALID [2022-04-15 09:22:41,678 INFO L290 TraceCheckUtils]: 65: Hoare triple {20388#(< ~counter~0 8)} assume !(~r~0 >= ~d~0); {20388#(< ~counter~0 8)} is VALID [2022-04-15 09:22:41,678 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {19977#true} {20388#(< ~counter~0 8)} #86#return; {20388#(< ~counter~0 8)} is VALID [2022-04-15 09:22:41,679 INFO L290 TraceCheckUtils]: 63: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-15 09:22:41,679 INFO L290 TraceCheckUtils]: 62: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-15 09:22:41,679 INFO L290 TraceCheckUtils]: 61: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-15 09:22:41,679 INFO L272 TraceCheckUtils]: 60: Hoare triple {20388#(< ~counter~0 8)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19977#true} is VALID [2022-04-15 09:22:41,679 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {19977#true} {20388#(< ~counter~0 8)} #84#return; {20388#(< ~counter~0 8)} is VALID [2022-04-15 09:22:41,679 INFO L290 TraceCheckUtils]: 58: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-15 09:22:41,679 INFO L290 TraceCheckUtils]: 57: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-15 09:22:41,679 INFO L290 TraceCheckUtils]: 56: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-15 09:22:41,679 INFO L272 TraceCheckUtils]: 55: Hoare triple {20388#(< ~counter~0 8)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {19977#true} is VALID [2022-04-15 09:22:41,680 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {19977#true} {20388#(< ~counter~0 8)} #82#return; {20388#(< ~counter~0 8)} is VALID [2022-04-15 09:22:41,680 INFO L290 TraceCheckUtils]: 53: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-15 09:22:41,680 INFO L290 TraceCheckUtils]: 52: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-15 09:22:41,680 INFO L290 TraceCheckUtils]: 51: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-15 09:22:41,680 INFO L272 TraceCheckUtils]: 50: Hoare triple {20388#(< ~counter~0 8)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {19977#true} is VALID [2022-04-15 09:22:41,680 INFO L290 TraceCheckUtils]: 49: Hoare triple {20388#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {20388#(< ~counter~0 8)} is VALID [2022-04-15 09:22:41,681 INFO L290 TraceCheckUtils]: 48: Hoare triple {20443#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20388#(< ~counter~0 8)} is VALID [2022-04-15 09:22:41,681 INFO L290 TraceCheckUtils]: 47: Hoare triple {20443#(< ~counter~0 7)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {20443#(< ~counter~0 7)} is VALID [2022-04-15 09:22:41,681 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {19977#true} {20443#(< ~counter~0 7)} #86#return; {20443#(< ~counter~0 7)} is VALID [2022-04-15 09:22:41,682 INFO L290 TraceCheckUtils]: 45: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-15 09:22:41,682 INFO L290 TraceCheckUtils]: 44: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-15 09:22:41,682 INFO L290 TraceCheckUtils]: 43: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-15 09:22:41,682 INFO L272 TraceCheckUtils]: 42: Hoare triple {20443#(< ~counter~0 7)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19977#true} is VALID [2022-04-15 09:22:41,682 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {19977#true} {20443#(< ~counter~0 7)} #84#return; {20443#(< ~counter~0 7)} is VALID [2022-04-15 09:22:41,682 INFO L290 TraceCheckUtils]: 40: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-15 09:22:41,682 INFO L290 TraceCheckUtils]: 39: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-15 09:22:41,682 INFO L290 TraceCheckUtils]: 38: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-15 09:22:41,682 INFO L272 TraceCheckUtils]: 37: Hoare triple {20443#(< ~counter~0 7)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {19977#true} is VALID [2022-04-15 09:22:41,683 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {19977#true} {20443#(< ~counter~0 7)} #82#return; {20443#(< ~counter~0 7)} is VALID [2022-04-15 09:22:41,683 INFO L290 TraceCheckUtils]: 35: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-15 09:22:41,683 INFO L290 TraceCheckUtils]: 34: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-15 09:22:41,683 INFO L290 TraceCheckUtils]: 33: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-15 09:22:41,683 INFO L272 TraceCheckUtils]: 32: Hoare triple {20443#(< ~counter~0 7)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {19977#true} is VALID [2022-04-15 09:22:41,683 INFO L290 TraceCheckUtils]: 31: Hoare triple {20443#(< ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {20443#(< ~counter~0 7)} is VALID [2022-04-15 09:22:41,684 INFO L290 TraceCheckUtils]: 30: Hoare triple {20227#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20443#(< ~counter~0 7)} is VALID [2022-04-15 09:22:41,684 INFO L290 TraceCheckUtils]: 29: Hoare triple {20227#(<= ~counter~0 5)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,684 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {19977#true} {20227#(<= ~counter~0 5)} #86#return; {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,684 INFO L290 TraceCheckUtils]: 27: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-15 09:22:41,684 INFO L290 TraceCheckUtils]: 26: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-15 09:22:41,684 INFO L290 TraceCheckUtils]: 25: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-15 09:22:41,685 INFO L272 TraceCheckUtils]: 24: Hoare triple {20227#(<= ~counter~0 5)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19977#true} is VALID [2022-04-15 09:22:41,685 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {19977#true} {20227#(<= ~counter~0 5)} #84#return; {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,685 INFO L290 TraceCheckUtils]: 22: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-15 09:22:41,685 INFO L290 TraceCheckUtils]: 21: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-15 09:22:41,685 INFO L290 TraceCheckUtils]: 20: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-15 09:22:41,685 INFO L272 TraceCheckUtils]: 19: Hoare triple {20227#(<= ~counter~0 5)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {19977#true} is VALID [2022-04-15 09:22:41,685 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {19977#true} {20227#(<= ~counter~0 5)} #82#return; {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,686 INFO L290 TraceCheckUtils]: 17: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-15 09:22:41,686 INFO L290 TraceCheckUtils]: 16: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-15 09:22:41,686 INFO L290 TraceCheckUtils]: 15: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-15 09:22:41,686 INFO L272 TraceCheckUtils]: 14: Hoare triple {20227#(<= ~counter~0 5)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {19977#true} is VALID [2022-04-15 09:22:41,686 INFO L290 TraceCheckUtils]: 13: Hoare triple {20227#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,686 INFO L290 TraceCheckUtils]: 12: Hoare triple {20184#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20227#(<= ~counter~0 5)} is VALID [2022-04-15 09:22:41,687 INFO L290 TraceCheckUtils]: 11: Hoare triple {20184#(<= ~counter~0 4)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,687 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19977#true} {20184#(<= ~counter~0 4)} #80#return; {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,687 INFO L290 TraceCheckUtils]: 9: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-15 09:22:41,687 INFO L290 TraceCheckUtils]: 8: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-15 09:22:41,687 INFO L290 TraceCheckUtils]: 7: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-15 09:22:41,687 INFO L272 TraceCheckUtils]: 6: Hoare triple {20184#(<= ~counter~0 4)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {19977#true} is VALID [2022-04-15 09:22:41,688 INFO L290 TraceCheckUtils]: 5: Hoare triple {20184#(<= ~counter~0 4)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,688 INFO L272 TraceCheckUtils]: 4: Hoare triple {20184#(<= ~counter~0 4)} call #t~ret8 := main(); {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,688 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20184#(<= ~counter~0 4)} {19977#true} #96#return; {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,688 INFO L290 TraceCheckUtils]: 2: Hoare triple {20184#(<= ~counter~0 4)} assume true; {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,689 INFO L290 TraceCheckUtils]: 1: Hoare triple {19977#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {20184#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:41,689 INFO L272 TraceCheckUtils]: 0: Hoare triple {19977#true} call ULTIMATE.init(); {19977#true} is VALID [2022-04-15 09:22:41,689 INFO L134 CoverageAnalysis]: Checked inductivity of 366 backedges. 26 proven. 28 refuted. 0 times theorem prover too weak. 312 trivial. 0 not checked. [2022-04-15 09:22:41,689 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:22:41,689 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1486857968] [2022-04-15 09:22:41,689 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:22:41,689 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1426687400] [2022-04-15 09:22:41,689 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1426687400] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:22:41,690 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:22:41,690 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-15 09:22:41,690 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:22:41,690 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [801673895] [2022-04-15 09:22:41,690 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [801673895] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:22:41,690 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:22:41,690 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 09:22:41,690 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1570065160] [2022-04-15 09:22:41,690 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:22:41,690 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 8 states have call successors, (17), 8 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 100 [2022-04-15 09:22:41,690 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:22:41,691 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 8 states have call successors, (17), 8 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:22:41,751 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:41,751 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 09:22:41,751 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:22:41,751 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 09:22:41,751 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-15 09:22:41,752 INFO L87 Difference]: Start difference. First operand 207 states and 245 transitions. Second operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 8 states have call successors, (17), 8 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:22:42,604 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:42,604 INFO L93 Difference]: Finished difference Result 260 states and 302 transitions. [2022-04-15 09:22:42,604 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-15 09:22:42,604 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 8 states have call successors, (17), 8 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 100 [2022-04-15 09:22:42,604 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:22:42,604 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 8 states have call successors, (17), 8 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:22:42,606 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 135 transitions. [2022-04-15 09:22:42,606 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 8 states have call successors, (17), 8 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:22:42,607 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 135 transitions. [2022-04-15 09:22:42,607 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 135 transitions. [2022-04-15 09:22:42,711 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:42,714 INFO L225 Difference]: With dead ends: 260 [2022-04-15 09:22:42,715 INFO L226 Difference]: Without dead ends: 246 [2022-04-15 09:22:42,715 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 201 GetRequests, 186 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=91, Invalid=149, Unknown=0, NotChecked=0, Total=240 [2022-04-15 09:22:42,715 INFO L913 BasicCegarLoop]: 58 mSDtfsCounter, 42 mSDsluCounter, 158 mSDsCounter, 0 mSdLazyCounter, 98 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 42 SdHoareTripleChecker+Valid, 216 SdHoareTripleChecker+Invalid, 131 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 33 IncrementalHoareTripleChecker+Valid, 98 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-15 09:22:42,715 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [42 Valid, 216 Invalid, 131 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [33 Valid, 98 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-15 09:22:42,716 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 246 states. [2022-04-15 09:22:42,991 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 246 to 245. [2022-04-15 09:22:42,991 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:22:42,992 INFO L82 GeneralOperation]: Start isEquivalent. First operand 246 states. Second operand has 245 states, 163 states have (on average 1.1349693251533743) internal successors, (185), 172 states have internal predecessors, (185), 50 states have call successors, (50), 32 states have call predecessors, (50), 31 states have return successors, (46), 40 states have call predecessors, (46), 46 states have call successors, (46) [2022-04-15 09:22:42,992 INFO L74 IsIncluded]: Start isIncluded. First operand 246 states. Second operand has 245 states, 163 states have (on average 1.1349693251533743) internal successors, (185), 172 states have internal predecessors, (185), 50 states have call successors, (50), 32 states have call predecessors, (50), 31 states have return successors, (46), 40 states have call predecessors, (46), 46 states have call successors, (46) [2022-04-15 09:22:42,992 INFO L87 Difference]: Start difference. First operand 246 states. Second operand has 245 states, 163 states have (on average 1.1349693251533743) internal successors, (185), 172 states have internal predecessors, (185), 50 states have call successors, (50), 32 states have call predecessors, (50), 31 states have return successors, (46), 40 states have call predecessors, (46), 46 states have call successors, (46) [2022-04-15 09:22:42,995 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:42,995 INFO L93 Difference]: Finished difference Result 246 states and 282 transitions. [2022-04-15 09:22:42,996 INFO L276 IsEmpty]: Start isEmpty. Operand 246 states and 282 transitions. [2022-04-15 09:22:42,996 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:22:42,996 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:22:42,996 INFO L74 IsIncluded]: Start isIncluded. First operand has 245 states, 163 states have (on average 1.1349693251533743) internal successors, (185), 172 states have internal predecessors, (185), 50 states have call successors, (50), 32 states have call predecessors, (50), 31 states have return successors, (46), 40 states have call predecessors, (46), 46 states have call successors, (46) Second operand 246 states. [2022-04-15 09:22:42,996 INFO L87 Difference]: Start difference. First operand has 245 states, 163 states have (on average 1.1349693251533743) internal successors, (185), 172 states have internal predecessors, (185), 50 states have call successors, (50), 32 states have call predecessors, (50), 31 states have return successors, (46), 40 states have call predecessors, (46), 46 states have call successors, (46) Second operand 246 states. [2022-04-15 09:22:43,000 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:43,000 INFO L93 Difference]: Finished difference Result 246 states and 282 transitions. [2022-04-15 09:22:43,000 INFO L276 IsEmpty]: Start isEmpty. Operand 246 states and 282 transitions. [2022-04-15 09:22:43,000 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:22:43,000 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:22:43,000 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:22:43,000 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:22:43,000 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 245 states, 163 states have (on average 1.1349693251533743) internal successors, (185), 172 states have internal predecessors, (185), 50 states have call successors, (50), 32 states have call predecessors, (50), 31 states have return successors, (46), 40 states have call predecessors, (46), 46 states have call successors, (46) [2022-04-15 09:22:43,004 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 245 states to 245 states and 281 transitions. [2022-04-15 09:22:43,004 INFO L78 Accepts]: Start accepts. Automaton has 245 states and 281 transitions. Word has length 100 [2022-04-15 09:22:43,004 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:22:43,004 INFO L478 AbstractCegarLoop]: Abstraction has 245 states and 281 transitions. [2022-04-15 09:22:43,004 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 8 states have call successors, (17), 8 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:22:43,005 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 245 states and 281 transitions. [2022-04-15 09:22:45,362 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 281 edges. 280 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:45,362 INFO L276 IsEmpty]: Start isEmpty. Operand 245 states and 281 transitions. [2022-04-15 09:22:45,362 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 101 [2022-04-15 09:22:45,363 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:22:45,363 INFO L499 BasicCegarLoop]: trace histogram [14, 13, 13, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:22:45,379 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-04-15 09:22:45,563 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable20,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:22:45,563 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:22:45,563 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:22:45,564 INFO L85 PathProgramCache]: Analyzing trace with hash -543991253, now seen corresponding path program 9 times [2022-04-15 09:22:45,564 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:22:45,564 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1901404164] [2022-04-15 09:22:53,782 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:22:53,783 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:22:53,783 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:22:53,783 INFO L85 PathProgramCache]: Analyzing trace with hash -543991253, now seen corresponding path program 10 times [2022-04-15 09:22:53,783 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:22:53,783 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2137102703] [2022-04-15 09:22:53,783 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:22:53,783 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:22:53,792 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:22:53,792 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [251754697] [2022-04-15 09:22:53,792 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 09:22:53,792 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:22:53,792 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:22:53,800 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:22:53,801 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-04-15 09:22:53,867 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 09:22:53,867 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:22:53,869 INFO L263 TraceCheckSpWp]: Trace formula consists of 255 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-15 09:22:53,886 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:22:53,887 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:22:59,185 INFO L272 TraceCheckUtils]: 0: Hoare triple {22096#true} call ULTIMATE.init(); {22096#true} is VALID [2022-04-15 09:22:59,185 INFO L290 TraceCheckUtils]: 1: Hoare triple {22096#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {22096#true} is VALID [2022-04-15 09:22:59,185 INFO L290 TraceCheckUtils]: 2: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:22:59,185 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22096#true} {22096#true} #96#return; {22096#true} is VALID [2022-04-15 09:22:59,185 INFO L272 TraceCheckUtils]: 4: Hoare triple {22096#true} call #t~ret8 := main(); {22096#true} is VALID [2022-04-15 09:22:59,185 INFO L290 TraceCheckUtils]: 5: Hoare triple {22096#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {22096#true} is VALID [2022-04-15 09:22:59,185 INFO L272 TraceCheckUtils]: 6: Hoare triple {22096#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:22:59,185 INFO L290 TraceCheckUtils]: 7: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:22:59,185 INFO L290 TraceCheckUtils]: 8: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:22:59,185 INFO L290 TraceCheckUtils]: 9: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:22:59,185 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22096#true} {22096#true} #80#return; {22096#true} is VALID [2022-04-15 09:22:59,186 INFO L290 TraceCheckUtils]: 11: Hoare triple {22096#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {22134#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:22:59,186 INFO L290 TraceCheckUtils]: 12: Hoare triple {22134#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22134#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:22:59,187 INFO L290 TraceCheckUtils]: 13: Hoare triple {22134#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {22134#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:22:59,187 INFO L272 TraceCheckUtils]: 14: Hoare triple {22134#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:22:59,187 INFO L290 TraceCheckUtils]: 15: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:22:59,187 INFO L290 TraceCheckUtils]: 16: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:22:59,187 INFO L290 TraceCheckUtils]: 17: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:22:59,187 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {22096#true} {22134#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} #82#return; {22134#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:22:59,187 INFO L272 TraceCheckUtils]: 19: Hoare triple {22134#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:22:59,187 INFO L290 TraceCheckUtils]: 20: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:22:59,188 INFO L290 TraceCheckUtils]: 21: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:22:59,188 INFO L290 TraceCheckUtils]: 22: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:22:59,188 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {22096#true} {22134#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} #84#return; {22134#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:22:59,188 INFO L272 TraceCheckUtils]: 24: Hoare triple {22134#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:22:59,188 INFO L290 TraceCheckUtils]: 25: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:22:59,188 INFO L290 TraceCheckUtils]: 26: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:22:59,188 INFO L290 TraceCheckUtils]: 27: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:22:59,189 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {22096#true} {22134#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} #86#return; {22134#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:22:59,190 INFO L290 TraceCheckUtils]: 29: Hoare triple {22134#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {22189#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0))} is VALID [2022-04-15 09:22:59,190 INFO L290 TraceCheckUtils]: 30: Hoare triple {22189#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22189#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0))} is VALID [2022-04-15 09:22:59,191 INFO L290 TraceCheckUtils]: 31: Hoare triple {22189#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {22189#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0))} is VALID [2022-04-15 09:22:59,191 INFO L272 TraceCheckUtils]: 32: Hoare triple {22189#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:22:59,191 INFO L290 TraceCheckUtils]: 33: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:22:59,191 INFO L290 TraceCheckUtils]: 34: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:22:59,191 INFO L290 TraceCheckUtils]: 35: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:22:59,191 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {22096#true} {22189#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0))} #82#return; {22189#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0))} is VALID [2022-04-15 09:22:59,191 INFO L272 TraceCheckUtils]: 37: Hoare triple {22189#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:22:59,192 INFO L290 TraceCheckUtils]: 38: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:22:59,192 INFO L290 TraceCheckUtils]: 39: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:22:59,192 INFO L290 TraceCheckUtils]: 40: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:22:59,192 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {22096#true} {22189#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0))} #84#return; {22189#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0))} is VALID [2022-04-15 09:22:59,192 INFO L272 TraceCheckUtils]: 42: Hoare triple {22189#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:22:59,192 INFO L290 TraceCheckUtils]: 43: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:22:59,192 INFO L290 TraceCheckUtils]: 44: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:22:59,192 INFO L290 TraceCheckUtils]: 45: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:22:59,193 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {22096#true} {22189#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0))} #86#return; {22189#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0))} is VALID [2022-04-15 09:22:59,194 INFO L290 TraceCheckUtils]: 47: Hoare triple {22189#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-15 09:22:59,194 INFO L290 TraceCheckUtils]: 48: Hoare triple {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-15 09:22:59,195 INFO L290 TraceCheckUtils]: 49: Hoare triple {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} assume !!(#t~post6 < 10);havoc #t~post6; {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-15 09:22:59,195 INFO L272 TraceCheckUtils]: 50: Hoare triple {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:22:59,195 INFO L290 TraceCheckUtils]: 51: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:22:59,195 INFO L290 TraceCheckUtils]: 52: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:22:59,195 INFO L290 TraceCheckUtils]: 53: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:22:59,195 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {22096#true} {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} #82#return; {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-15 09:22:59,195 INFO L272 TraceCheckUtils]: 55: Hoare triple {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:22:59,195 INFO L290 TraceCheckUtils]: 56: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:22:59,195 INFO L290 TraceCheckUtils]: 57: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:22:59,195 INFO L290 TraceCheckUtils]: 58: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:22:59,196 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {22096#true} {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} #84#return; {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-15 09:22:59,196 INFO L272 TraceCheckUtils]: 60: Hoare triple {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:22:59,196 INFO L290 TraceCheckUtils]: 61: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:22:59,196 INFO L290 TraceCheckUtils]: 62: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:22:59,196 INFO L290 TraceCheckUtils]: 63: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:22:59,197 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {22096#true} {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} #86#return; {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-15 09:22:59,197 INFO L290 TraceCheckUtils]: 65: Hoare triple {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} assume !(~r~0 >= ~d~0); {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-15 09:22:59,198 INFO L290 TraceCheckUtils]: 66: Hoare triple {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-15 09:22:59,198 INFO L290 TraceCheckUtils]: 67: Hoare triple {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} assume !!(#t~post7 < 10);havoc #t~post7; {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-15 09:22:59,198 INFO L272 TraceCheckUtils]: 68: Hoare triple {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:22:59,198 INFO L290 TraceCheckUtils]: 69: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:22:59,198 INFO L290 TraceCheckUtils]: 70: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:22:59,198 INFO L290 TraceCheckUtils]: 71: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:22:59,206 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {22096#true} {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} #88#return; {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-15 09:22:59,206 INFO L272 TraceCheckUtils]: 73: Hoare triple {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:22:59,206 INFO L290 TraceCheckUtils]: 74: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:22:59,206 INFO L290 TraceCheckUtils]: 75: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:22:59,206 INFO L290 TraceCheckUtils]: 76: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:22:59,207 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {22096#true} {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} #90#return; {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-15 09:22:59,209 INFO L290 TraceCheckUtils]: 78: Hoare triple {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {22339#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (= main_~p~0 2) (not (<= (* (mod main_~B~0 4294967296) 4) main_~r~0)) (= main_~q~0 0))} is VALID [2022-04-15 09:22:59,210 INFO L290 TraceCheckUtils]: 79: Hoare triple {22339#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (= main_~p~0 2) (not (<= (* (mod main_~B~0 4294967296) 4) main_~r~0)) (= main_~q~0 0))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-15 09:22:59,211 INFO L290 TraceCheckUtils]: 80: Hoare triple {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-15 09:22:59,211 INFO L290 TraceCheckUtils]: 81: Hoare triple {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} assume !!(#t~post7 < 10);havoc #t~post7; {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-15 09:22:59,211 INFO L272 TraceCheckUtils]: 82: Hoare triple {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:22:59,211 INFO L290 TraceCheckUtils]: 83: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:22:59,211 INFO L290 TraceCheckUtils]: 84: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:22:59,211 INFO L290 TraceCheckUtils]: 85: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:22:59,212 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {22096#true} {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} #88#return; {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-15 09:22:59,212 INFO L272 TraceCheckUtils]: 87: Hoare triple {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:22:59,212 INFO L290 TraceCheckUtils]: 88: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:22:59,212 INFO L290 TraceCheckUtils]: 89: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:22:59,212 INFO L290 TraceCheckUtils]: 90: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:22:59,213 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {22096#true} {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} #90#return; {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-15 09:22:59,214 INFO L290 TraceCheckUtils]: 92: Hoare triple {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {22383#(and (= main_~p~0 (div main_~q~0 2)) (= main_~q~0 2) (not (<= (* (mod main_~B~0 4294967296) 4) (mod main_~A~0 4294967296))) (= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (div (* (mod main_~B~0 4294967296) 4) 2)) (= main_~d~0 (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296)))} is VALID [2022-04-15 09:22:59,216 INFO L290 TraceCheckUtils]: 93: Hoare triple {22383#(and (= main_~p~0 (div main_~q~0 2)) (= main_~q~0 2) (not (<= (* (mod main_~B~0 4294967296) 4) (mod main_~A~0 4294967296))) (= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (div (* (mod main_~B~0 4294967296) 4) 2)) (= main_~d~0 (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296)))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {22387#(and (= main_~r~0 (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296) (* (- 2) (mod main_~B~0 4294967296)))) (not (<= (* (mod main_~B~0 4294967296) 4) (mod main_~A~0 4294967296))) (= (+ (- 2) main_~q~0) 1) (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296)))} is VALID [2022-04-15 09:22:59,216 INFO L290 TraceCheckUtils]: 94: Hoare triple {22387#(and (= main_~r~0 (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296) (* (- 2) (mod main_~B~0 4294967296)))) (not (<= (* (mod main_~B~0 4294967296) 4) (mod main_~A~0 4294967296))) (= (+ (- 2) main_~q~0) 1) (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22387#(and (= main_~r~0 (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296) (* (- 2) (mod main_~B~0 4294967296)))) (not (<= (* (mod main_~B~0 4294967296) 4) (mod main_~A~0 4294967296))) (= (+ (- 2) main_~q~0) 1) (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296)))} is VALID [2022-04-15 09:22:59,217 INFO L290 TraceCheckUtils]: 95: Hoare triple {22387#(and (= main_~r~0 (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296) (* (- 2) (mod main_~B~0 4294967296)))) (not (<= (* (mod main_~B~0 4294967296) 4) (mod main_~A~0 4294967296))) (= (+ (- 2) main_~q~0) 1) (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296)))} assume !!(#t~post7 < 10);havoc #t~post7; {22387#(and (= main_~r~0 (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296) (* (- 2) (mod main_~B~0 4294967296)))) (not (<= (* (mod main_~B~0 4294967296) 4) (mod main_~A~0 4294967296))) (= (+ (- 2) main_~q~0) 1) (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296)))} is VALID [2022-04-15 09:22:59,217 INFO L272 TraceCheckUtils]: 96: Hoare triple {22387#(and (= main_~r~0 (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296) (* (- 2) (mod main_~B~0 4294967296)))) (not (<= (* (mod main_~B~0 4294967296) 4) (mod main_~A~0 4294967296))) (= (+ (- 2) main_~q~0) 1) (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {22397#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:22:59,218 INFO L290 TraceCheckUtils]: 97: Hoare triple {22397#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {22401#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:22:59,218 INFO L290 TraceCheckUtils]: 98: Hoare triple {22401#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {22097#false} is VALID [2022-04-15 09:22:59,218 INFO L290 TraceCheckUtils]: 99: Hoare triple {22097#false} assume !false; {22097#false} is VALID [2022-04-15 09:22:59,218 INFO L134 CoverageAnalysis]: Checked inductivity of 368 backedges. 26 proven. 30 refuted. 0 times theorem prover too weak. 312 trivial. 0 not checked. [2022-04-15 09:22:59,218 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:23:14,522 WARN L232 SmtUtils]: Spent 5.03s on a formula simplification that was a NOOP. DAG size: 140 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-15 09:23:45,643 WARN L232 SmtUtils]: Spent 6.78s on a formula simplification that was a NOOP. DAG size: 142 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-15 09:24:23,831 INFO L290 TraceCheckUtils]: 99: Hoare triple {22097#false} assume !false; {22097#false} is VALID [2022-04-15 09:24:23,831 INFO L290 TraceCheckUtils]: 98: Hoare triple {22401#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {22097#false} is VALID [2022-04-15 09:24:23,832 INFO L290 TraceCheckUtils]: 97: Hoare triple {22397#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {22401#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:24:23,832 INFO L272 TraceCheckUtils]: 96: Hoare triple {22417#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {22397#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:24:23,833 INFO L290 TraceCheckUtils]: 95: Hoare triple {22417#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} assume !!(#t~post7 < 10);havoc #t~post7; {22417#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-15 09:24:23,833 INFO L290 TraceCheckUtils]: 94: Hoare triple {22417#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22417#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-15 09:24:23,835 INFO L290 TraceCheckUtils]: 93: Hoare triple {22427#(= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) (* (+ main_~q~0 main_~p~0) (mod main_~B~0 4294967296)) main_~r~0))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {22417#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-15 09:24:23,844 INFO L290 TraceCheckUtils]: 92: Hoare triple {22431#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {22427#(= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) (* (+ main_~q~0 main_~p~0) (mod main_~B~0 4294967296)) main_~r~0))} is VALID [2022-04-15 09:24:23,845 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {22096#true} {22431#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} #90#return; {22431#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:24:23,845 INFO L290 TraceCheckUtils]: 90: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:24:23,845 INFO L290 TraceCheckUtils]: 89: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:24:23,845 INFO L290 TraceCheckUtils]: 88: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:24:23,845 INFO L272 TraceCheckUtils]: 87: Hoare triple {22431#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:24:23,845 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {22096#true} {22431#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} #88#return; {22431#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:24:23,845 INFO L290 TraceCheckUtils]: 85: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:24:23,846 INFO L290 TraceCheckUtils]: 84: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:24:23,846 INFO L290 TraceCheckUtils]: 83: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:24:23,846 INFO L272 TraceCheckUtils]: 82: Hoare triple {22431#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:24:23,847 INFO L290 TraceCheckUtils]: 81: Hoare triple {22431#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} assume !!(#t~post7 < 10);havoc #t~post7; {22431#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:24:23,848 INFO L290 TraceCheckUtils]: 80: Hoare triple {22431#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22431#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:24:23,860 INFO L290 TraceCheckUtils]: 79: Hoare triple {22471#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (+ (* (mod main_~B~0 4294967296) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod main_~p~0 2) 0)) (or (= (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))))) (or (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (mod main_~B~0 4294967296) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)))) (= (mod main_~p~0 2) 0)) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)))) (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0))))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {22431#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:24:24,098 INFO L290 TraceCheckUtils]: 78: Hoare triple {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))))))))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {22471#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (+ (* (mod main_~B~0 4294967296) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod main_~p~0 2) 0)) (or (= (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))))) (or (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (mod main_~B~0 4294967296) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)))) (= (mod main_~p~0 2) 0)) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)))) (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0))))} is VALID [2022-04-15 09:24:24,099 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {22096#true} {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))))))))} #90#return; {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))))))))} is VALID [2022-04-15 09:24:24,099 INFO L290 TraceCheckUtils]: 76: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:24:24,099 INFO L290 TraceCheckUtils]: 75: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:24:24,099 INFO L290 TraceCheckUtils]: 74: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:24:24,099 INFO L272 TraceCheckUtils]: 73: Hoare triple {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))))))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:24:24,100 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {22096#true} {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))))))))} #88#return; {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))))))))} is VALID [2022-04-15 09:24:24,100 INFO L290 TraceCheckUtils]: 71: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:24:24,100 INFO L290 TraceCheckUtils]: 70: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:24:24,100 INFO L290 TraceCheckUtils]: 69: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:24:24,100 INFO L272 TraceCheckUtils]: 68: Hoare triple {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))))))))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:24:24,104 INFO L290 TraceCheckUtils]: 67: Hoare triple {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))))))))} assume !!(#t~post7 < 10);havoc #t~post7; {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))))))))} is VALID [2022-04-15 09:24:24,107 INFO L290 TraceCheckUtils]: 66: Hoare triple {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))))))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))))))))} is VALID [2022-04-15 09:24:24,109 INFO L290 TraceCheckUtils]: 65: Hoare triple {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0))))))))) (<= main_~d~0 main_~r~0))} assume !(~r~0 >= ~d~0); {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))))))))} is VALID [2022-04-15 09:24:24,110 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {22096#true} {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0))))))))) (<= main_~d~0 main_~r~0))} #86#return; {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0))))))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:24:24,110 INFO L290 TraceCheckUtils]: 63: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:24:24,110 INFO L290 TraceCheckUtils]: 62: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:24:24,110 INFO L290 TraceCheckUtils]: 61: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:24:24,111 INFO L272 TraceCheckUtils]: 60: Hoare triple {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0))))))))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:24:24,111 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {22096#true} {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0))))))))) (<= main_~d~0 main_~r~0))} #84#return; {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0))))))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:24:24,112 INFO L290 TraceCheckUtils]: 58: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:24:24,112 INFO L290 TraceCheckUtils]: 57: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:24:24,112 INFO L290 TraceCheckUtils]: 56: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:24:24,112 INFO L272 TraceCheckUtils]: 55: Hoare triple {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0))))))))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:24:24,113 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {22096#true} {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0))))))))) (<= main_~d~0 main_~r~0))} #82#return; {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0))))))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:24:24,113 INFO L290 TraceCheckUtils]: 53: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:24:24,113 INFO L290 TraceCheckUtils]: 52: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:24:24,113 INFO L290 TraceCheckUtils]: 51: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:24:24,113 INFO L272 TraceCheckUtils]: 50: Hoare triple {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0))))))))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:24:24,116 INFO L290 TraceCheckUtils]: 49: Hoare triple {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0))))))))) (<= main_~d~0 main_~r~0))} assume !!(#t~post6 < 10);havoc #t~post6; {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0))))))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:24:24,119 INFO L290 TraceCheckUtils]: 48: Hoare triple {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0))))))))) (<= main_~d~0 main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0))))))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:24:24,159 INFO L290 TraceCheckUtils]: 47: Hoare triple {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0))))))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:24:24,159 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {22096#true} {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} #86#return; {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:24:24,159 INFO L290 TraceCheckUtils]: 45: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:24:24,159 INFO L290 TraceCheckUtils]: 44: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:24:24,160 INFO L290 TraceCheckUtils]: 43: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:24:24,160 INFO L272 TraceCheckUtils]: 42: Hoare triple {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:24:24,160 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {22096#true} {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} #84#return; {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:24:24,160 INFO L290 TraceCheckUtils]: 40: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:24:24,160 INFO L290 TraceCheckUtils]: 39: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:24:24,160 INFO L290 TraceCheckUtils]: 38: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:24:24,160 INFO L272 TraceCheckUtils]: 37: Hoare triple {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:24:24,161 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {22096#true} {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} #82#return; {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:24:24,161 INFO L290 TraceCheckUtils]: 35: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:24:24,161 INFO L290 TraceCheckUtils]: 34: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:24:24,161 INFO L290 TraceCheckUtils]: 33: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:24:24,161 INFO L272 TraceCheckUtils]: 32: Hoare triple {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:24:24,162 INFO L290 TraceCheckUtils]: 31: Hoare triple {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} assume !!(#t~post6 < 10);havoc #t~post6; {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:24:24,163 INFO L290 TraceCheckUtils]: 30: Hoare triple {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:24:24,165 INFO L290 TraceCheckUtils]: 29: Hoare triple {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:24:24,166 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {22096#true} {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} #86#return; {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} is VALID [2022-04-15 09:24:24,166 INFO L290 TraceCheckUtils]: 27: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:24:24,166 INFO L290 TraceCheckUtils]: 26: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:24:24,166 INFO L290 TraceCheckUtils]: 25: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:24:24,166 INFO L272 TraceCheckUtils]: 24: Hoare triple {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:24:24,167 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {22096#true} {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} #84#return; {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} is VALID [2022-04-15 09:24:24,167 INFO L290 TraceCheckUtils]: 22: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:24:24,167 INFO L290 TraceCheckUtils]: 21: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:24:24,167 INFO L290 TraceCheckUtils]: 20: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:24:24,167 INFO L272 TraceCheckUtils]: 19: Hoare triple {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:24:24,168 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {22096#true} {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} #82#return; {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} is VALID [2022-04-15 09:24:24,168 INFO L290 TraceCheckUtils]: 17: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:24:24,168 INFO L290 TraceCheckUtils]: 16: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:24:24,168 INFO L290 TraceCheckUtils]: 15: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:24:24,168 INFO L272 TraceCheckUtils]: 14: Hoare triple {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:24:24,168 INFO L290 TraceCheckUtils]: 13: Hoare triple {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} assume !!(#t~post6 < 10);havoc #t~post6; {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} is VALID [2022-04-15 09:24:24,169 INFO L290 TraceCheckUtils]: 12: Hoare triple {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} is VALID [2022-04-15 09:24:24,171 INFO L290 TraceCheckUtils]: 11: Hoare triple {22096#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} is VALID [2022-04-15 09:24:24,171 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22096#true} {22096#true} #80#return; {22096#true} is VALID [2022-04-15 09:24:24,171 INFO L290 TraceCheckUtils]: 9: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:24:24,171 INFO L290 TraceCheckUtils]: 8: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-15 09:24:24,171 INFO L290 TraceCheckUtils]: 7: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-15 09:24:24,171 INFO L272 TraceCheckUtils]: 6: Hoare triple {22096#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {22096#true} is VALID [2022-04-15 09:24:24,171 INFO L290 TraceCheckUtils]: 5: Hoare triple {22096#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {22096#true} is VALID [2022-04-15 09:24:24,171 INFO L272 TraceCheckUtils]: 4: Hoare triple {22096#true} call #t~ret8 := main(); {22096#true} is VALID [2022-04-15 09:24:24,171 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22096#true} {22096#true} #96#return; {22096#true} is VALID [2022-04-15 09:24:24,171 INFO L290 TraceCheckUtils]: 2: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-15 09:24:24,171 INFO L290 TraceCheckUtils]: 1: Hoare triple {22096#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {22096#true} is VALID [2022-04-15 09:24:24,171 INFO L272 TraceCheckUtils]: 0: Hoare triple {22096#true} call ULTIMATE.init(); {22096#true} is VALID [2022-04-15 09:24:24,172 INFO L134 CoverageAnalysis]: Checked inductivity of 368 backedges. 26 proven. 30 refuted. 0 times theorem prover too weak. 312 trivial. 0 not checked. [2022-04-15 09:24:24,173 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:24:24,173 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2137102703] [2022-04-15 09:24:24,173 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:24:24,173 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [251754697] [2022-04-15 09:24:24,173 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [251754697] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:24:24,173 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:24:24,173 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 20 [2022-04-15 09:24:24,173 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:24:24,173 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1901404164] [2022-04-15 09:24:24,173 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1901404164] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:24:24,173 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:24:24,173 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-15 09:24:24,173 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [37621268] [2022-04-15 09:24:24,173 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:24:24,174 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 11 states have internal predecessors, (32), 7 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 6 states have call predecessors, (15), 6 states have call successors, (15) Word has length 100 [2022-04-15 09:24:24,174 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:24:24,174 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 11 states have internal predecessors, (32), 7 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 6 states have call predecessors, (15), 6 states have call successors, (15) [2022-04-15 09:24:24,249 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:24:24,249 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-15 09:24:24,249 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:24:24,250 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-15 09:24:24,250 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=296, Unknown=1, NotChecked=0, Total=380 [2022-04-15 09:24:24,250 INFO L87 Difference]: Start difference. First operand 245 states and 281 transitions. Second operand has 12 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 11 states have internal predecessors, (32), 7 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 6 states have call predecessors, (15), 6 states have call successors, (15) [2022-04-15 09:24:27,951 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:24:27,951 INFO L93 Difference]: Finished difference Result 270 states and 303 transitions. [2022-04-15 09:24:27,951 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 09:24:27,952 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 11 states have internal predecessors, (32), 7 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 6 states have call predecessors, (15), 6 states have call successors, (15) Word has length 100 [2022-04-15 09:24:27,952 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:24:27,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 11 states have internal predecessors, (32), 7 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 6 states have call predecessors, (15), 6 states have call successors, (15) [2022-04-15 09:24:27,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 121 transitions. [2022-04-15 09:24:27,953 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 11 states have internal predecessors, (32), 7 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 6 states have call predecessors, (15), 6 states have call successors, (15) [2022-04-15 09:24:27,954 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 121 transitions. [2022-04-15 09:24:27,954 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 121 transitions. [2022-04-15 09:24:28,164 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:24:28,167 INFO L225 Difference]: With dead ends: 270 [2022-04-15 09:24:28,167 INFO L226 Difference]: Without dead ends: 233 [2022-04-15 09:24:28,168 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 200 GetRequests, 180 SyntacticMatches, 1 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 64 ImplicationChecksByTransitivity, 19.7s TimeCoverageRelationStatistics Valid=87, Invalid=332, Unknown=1, NotChecked=0, Total=420 [2022-04-15 09:24:28,168 INFO L913 BasicCegarLoop]: 59 mSDtfsCounter, 13 mSDsluCounter, 335 mSDsCounter, 0 mSdLazyCounter, 506 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 394 SdHoareTripleChecker+Invalid, 526 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 506 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.8s IncrementalHoareTripleChecker+Time [2022-04-15 09:24:28,168 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 394 Invalid, 526 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 506 Invalid, 0 Unknown, 0 Unchecked, 1.8s Time] [2022-04-15 09:24:28,168 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 233 states. [2022-04-15 09:24:28,423 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 233 to 233. [2022-04-15 09:24:28,423 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:24:28,423 INFO L82 GeneralOperation]: Start isEquivalent. First operand 233 states. Second operand has 233 states, 155 states have (on average 1.1290322580645162) internal successors, (175), 162 states have internal predecessors, (175), 46 states have call successors, (46), 32 states have call predecessors, (46), 31 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-15 09:24:28,423 INFO L74 IsIncluded]: Start isIncluded. First operand 233 states. Second operand has 233 states, 155 states have (on average 1.1290322580645162) internal successors, (175), 162 states have internal predecessors, (175), 46 states have call successors, (46), 32 states have call predecessors, (46), 31 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-15 09:24:28,424 INFO L87 Difference]: Start difference. First operand 233 states. Second operand has 233 states, 155 states have (on average 1.1290322580645162) internal successors, (175), 162 states have internal predecessors, (175), 46 states have call successors, (46), 32 states have call predecessors, (46), 31 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-15 09:24:28,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:24:28,450 INFO L93 Difference]: Finished difference Result 233 states and 264 transitions. [2022-04-15 09:24:28,450 INFO L276 IsEmpty]: Start isEmpty. Operand 233 states and 264 transitions. [2022-04-15 09:24:28,450 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:24:28,450 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:24:28,451 INFO L74 IsIncluded]: Start isIncluded. First operand has 233 states, 155 states have (on average 1.1290322580645162) internal successors, (175), 162 states have internal predecessors, (175), 46 states have call successors, (46), 32 states have call predecessors, (46), 31 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) Second operand 233 states. [2022-04-15 09:24:28,451 INFO L87 Difference]: Start difference. First operand has 233 states, 155 states have (on average 1.1290322580645162) internal successors, (175), 162 states have internal predecessors, (175), 46 states have call successors, (46), 32 states have call predecessors, (46), 31 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) Second operand 233 states. [2022-04-15 09:24:28,454 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:24:28,454 INFO L93 Difference]: Finished difference Result 233 states and 264 transitions. [2022-04-15 09:24:28,454 INFO L276 IsEmpty]: Start isEmpty. Operand 233 states and 264 transitions. [2022-04-15 09:24:28,454 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:24:28,454 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:24:28,454 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:24:28,454 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:24:28,455 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 233 states, 155 states have (on average 1.1290322580645162) internal successors, (175), 162 states have internal predecessors, (175), 46 states have call successors, (46), 32 states have call predecessors, (46), 31 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-15 09:24:28,458 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 233 states to 233 states and 264 transitions. [2022-04-15 09:24:28,458 INFO L78 Accepts]: Start accepts. Automaton has 233 states and 264 transitions. Word has length 100 [2022-04-15 09:24:28,458 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:24:28,458 INFO L478 AbstractCegarLoop]: Abstraction has 233 states and 264 transitions. [2022-04-15 09:24:28,458 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 11 states have internal predecessors, (32), 7 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 6 states have call predecessors, (15), 6 states have call successors, (15) [2022-04-15 09:24:28,458 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 233 states and 264 transitions. [2022-04-15 09:24:30,868 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 264 edges. 263 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:24:30,868 INFO L276 IsEmpty]: Start isEmpty. Operand 233 states and 264 transitions. [2022-04-15 09:24:30,869 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2022-04-15 09:24:30,869 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:24:30,869 INFO L499 BasicCegarLoop]: trace histogram [16, 15, 15, 4, 4, 4, 4, 4, 4, 4, 4, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:24:30,886 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Ended with exit code 0 [2022-04-15 09:24:31,070 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable21,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:24:31,070 INFO L403 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:24:31,071 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:24:31,071 INFO L85 PathProgramCache]: Analyzing trace with hash 979077220, now seen corresponding path program 11 times [2022-04-15 09:24:31,071 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:24:31,071 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [814208162] [2022-04-15 09:24:37,317 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:24:37,317 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:24:37,317 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:24:37,317 INFO L85 PathProgramCache]: Analyzing trace with hash 979077220, now seen corresponding path program 12 times [2022-04-15 09:24:37,317 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:24:37,317 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1899473508] [2022-04-15 09:24:37,317 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:24:37,317 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:24:37,326 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:24:37,326 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1834992670] [2022-04-15 09:24:37,326 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 09:24:37,326 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:24:37,327 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:24:37,334 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:24:37,335 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-04-15 09:24:37,419 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-15 09:24:37,419 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:24:37,420 INFO L263 TraceCheckSpWp]: Trace formula consists of 195 conjuncts, 45 conjunts are in the unsatisfiable core [2022-04-15 09:24:37,440 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:24:37,441 INFO L286 TraceCheckSpWp]: Computing forward predicates...