/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/hard-u_valuebound2.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 13:08:51,209 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 13:08:51,211 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 13:08:51,257 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 13:08:51,257 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 13:08:51,258 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 13:08:51,260 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 13:08:51,262 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 13:08:51,263 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 13:08:51,266 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 13:08:51,267 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 13:08:51,268 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 13:08:51,268 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 13:08:51,269 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 13:08:51,270 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 13:08:51,272 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 13:08:51,272 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 13:08:51,273 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 13:08:51,274 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 13:08:51,278 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 13:08:51,279 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 13:08:51,280 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 13:08:51,280 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 13:08:51,281 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 13:08:51,282 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 13:08:51,286 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 13:08:51,286 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 13:08:51,286 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 13:08:51,287 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 13:08:51,287 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 13:08:51,288 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 13:08:51,288 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 13:08:51,289 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 13:08:51,290 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 13:08:51,290 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 13:08:51,290 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 13:08:51,290 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 13:08:51,291 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 13:08:51,291 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 13:08:51,291 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 13:08:51,291 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 13:08:51,292 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 13:08:51,293 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf [2022-04-08 13:08:51,299 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 13:08:51,300 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 13:08:51,301 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 13:08:51,301 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 13:08:51,301 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 13:08:51,301 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 13:08:51,301 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 13:08:51,301 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 13:08:51,301 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 13:08:51,302 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 13:08:51,302 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 13:08:51,302 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 13:08:51,302 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 13:08:51,302 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 13:08:51,302 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 13:08:51,302 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 13:08:51,302 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 13:08:51,302 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 13:08:51,302 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 13:08:51,303 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 13:08:51,303 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 13:08:51,303 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-08 13:08:51,303 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-08 13:08:51,483 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 13:08:51,500 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 13:08:51,503 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 13:08:51,504 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 13:08:51,504 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 13:08:51,505 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/hard-u_valuebound2.c [2022-04-08 13:08:51,540 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/18eb1bd11/bd074e9abe0d4f5599f2e9b397be60ad/FLAG38c896a99 [2022-04-08 13:08:51,902 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 13:08:51,902 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/hard-u_valuebound2.c [2022-04-08 13:08:51,911 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/18eb1bd11/bd074e9abe0d4f5599f2e9b397be60ad/FLAG38c896a99 [2022-04-08 13:08:52,341 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/18eb1bd11/bd074e9abe0d4f5599f2e9b397be60ad [2022-04-08 13:08:52,342 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 13:08:52,343 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 13:08:52,344 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 13:08:52,344 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 13:08:52,347 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 13:08:52,348 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 01:08:52" (1/1) ... [2022-04-08 13:08:52,349 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6c57e854 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:08:52, skipping insertion in model container [2022-04-08 13:08:52,349 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 01:08:52" (1/1) ... [2022-04-08 13:08:52,354 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 13:08:52,364 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 13:08:52,483 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-u_valuebound2.c[537,550] [2022-04-08 13:08:52,496 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 13:08:52,501 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 13:08:52,509 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-u_valuebound2.c[537,550] [2022-04-08 13:08:52,516 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 13:08:52,525 INFO L208 MainTranslator]: Completed translation [2022-04-08 13:08:52,525 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:08:52 WrapperNode [2022-04-08 13:08:52,525 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 13:08:52,526 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 13:08:52,526 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 13:08:52,526 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 13:08:52,532 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:08:52" (1/1) ... [2022-04-08 13:08:52,532 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:08:52" (1/1) ... [2022-04-08 13:08:52,536 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:08:52" (1/1) ... [2022-04-08 13:08:52,537 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:08:52" (1/1) ... [2022-04-08 13:08:52,541 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:08:52" (1/1) ... [2022-04-08 13:08:52,544 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:08:52" (1/1) ... [2022-04-08 13:08:52,545 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:08:52" (1/1) ... [2022-04-08 13:08:52,546 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 13:08:52,547 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 13:08:52,547 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 13:08:52,547 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 13:08:52,562 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:08:52" (1/1) ... [2022-04-08 13:08:52,574 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 13:08:52,585 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 13:08:52,595 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-08 13:08:52,596 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-08 13:08:52,623 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 13:08:52,623 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 13:08:52,623 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 13:08:52,623 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 13:08:52,623 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 13:08:52,623 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 13:08:52,624 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 13:08:52,624 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 13:08:52,624 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 13:08:52,624 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 13:08:52,624 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-08 13:08:52,624 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 13:08:52,624 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 13:08:52,624 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 13:08:52,624 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 13:08:52,624 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 13:08:52,624 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 13:08:52,624 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 13:08:52,624 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 13:08:52,624 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 13:08:52,669 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 13:08:52,671 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 13:08:52,772 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 13:08:52,777 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 13:08:52,777 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-08 13:08:52,778 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 01:08:52 BoogieIcfgContainer [2022-04-08 13:08:52,778 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 13:08:52,779 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 13:08:52,779 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 13:08:52,782 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 13:08:52,782 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 01:08:52" (1/3) ... [2022-04-08 13:08:52,783 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1054a7a2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 01:08:52, skipping insertion in model container [2022-04-08 13:08:52,783 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:08:52" (2/3) ... [2022-04-08 13:08:52,783 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1054a7a2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 01:08:52, skipping insertion in model container [2022-04-08 13:08:52,783 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 01:08:52" (3/3) ... [2022-04-08 13:08:52,784 INFO L111 eAbstractionObserver]: Analyzing ICFG hard-u_valuebound2.c [2022-04-08 13:08:52,787 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 13:08:52,788 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 13:08:52,815 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 13:08:52,820 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-08 13:08:52,820 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 13:08:52,833 INFO L276 IsEmpty]: Start isEmpty. Operand has 38 states, 20 states have (on average 1.5) internal successors, (30), 21 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-08 13:08:52,838 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 13:08:52,838 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 13:08:52,838 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 13:08:52,839 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 13:08:52,842 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 13:08:52,842 INFO L85 PathProgramCache]: Analyzing trace with hash -1784424332, now seen corresponding path program 1 times [2022-04-08 13:08:52,848 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 13:08:52,848 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1555295289] [2022-04-08 13:08:52,855 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 13:08:52,856 INFO L85 PathProgramCache]: Analyzing trace with hash -1784424332, now seen corresponding path program 2 times [2022-04-08 13:08:52,858 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 13:08:52,858 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1572549936] [2022-04-08 13:08:52,858 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 13:08:52,859 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 13:08:52,948 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:52,987 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 13:08:52,990 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:53,001 INFO L290 TraceCheckUtils]: 0: Hoare triple {58#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(9, 2);call #Ultimate.allocInit(12, 3); {41#true} is VALID [2022-04-08 13:08:53,001 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-08 13:08:53,001 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {41#true} {41#true} #101#return; {41#true} is VALID [2022-04-08 13:08:53,002 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 13:08:53,004 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:53,008 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-08 13:08:53,009 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-08 13:08:53,009 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-08 13:08:53,009 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {41#true} #81#return; {42#false} is VALID [2022-04-08 13:08:53,009 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-08 13:08:53,011 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:53,015 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-08 13:08:53,016 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-08 13:08:53,016 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-08 13:08:53,016 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {42#false} #83#return; {42#false} is VALID [2022-04-08 13:08:53,017 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-08 13:08:53,018 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:53,022 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-08 13:08:53,023 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-08 13:08:53,023 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-08 13:08:53,023 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {42#false} #85#return; {42#false} is VALID [2022-04-08 13:08:53,024 INFO L272 TraceCheckUtils]: 0: Hoare triple {41#true} call ULTIMATE.init(); {58#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 13:08:53,024 INFO L290 TraceCheckUtils]: 1: Hoare triple {58#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(9, 2);call #Ultimate.allocInit(12, 3); {41#true} is VALID [2022-04-08 13:08:53,024 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-08 13:08:53,024 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#true} {41#true} #101#return; {41#true} is VALID [2022-04-08 13:08:53,025 INFO L272 TraceCheckUtils]: 4: Hoare triple {41#true} call #t~ret6 := main(); {41#true} is VALID [2022-04-08 13:08:53,025 INFO L290 TraceCheckUtils]: 5: Hoare triple {41#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4; {41#true} is VALID [2022-04-08 13:08:53,025 INFO L272 TraceCheckUtils]: 6: Hoare triple {41#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {41#true} is VALID [2022-04-08 13:08:53,025 INFO L290 TraceCheckUtils]: 7: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-08 13:08:53,026 INFO L290 TraceCheckUtils]: 8: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-08 13:08:53,026 INFO L290 TraceCheckUtils]: 9: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-08 13:08:53,026 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42#false} {41#true} #81#return; {42#false} is VALID [2022-04-08 13:08:53,026 INFO L290 TraceCheckUtils]: 11: Hoare triple {42#false} ~B~0 := #t~nondet5;havoc #t~nondet5; {42#false} is VALID [2022-04-08 13:08:53,026 INFO L272 TraceCheckUtils]: 12: Hoare triple {42#false} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {41#true} is VALID [2022-04-08 13:08:53,026 INFO L290 TraceCheckUtils]: 13: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-08 13:08:53,027 INFO L290 TraceCheckUtils]: 14: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-08 13:08:53,027 INFO L290 TraceCheckUtils]: 15: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-08 13:08:53,027 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {42#false} {42#false} #83#return; {42#false} is VALID [2022-04-08 13:08:53,027 INFO L272 TraceCheckUtils]: 17: Hoare triple {42#false} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {41#true} is VALID [2022-04-08 13:08:53,028 INFO L290 TraceCheckUtils]: 18: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-08 13:08:53,028 INFO L290 TraceCheckUtils]: 19: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-08 13:08:53,028 INFO L290 TraceCheckUtils]: 20: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-08 13:08:53,028 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {42#false} {42#false} #85#return; {42#false} is VALID [2022-04-08 13:08:53,028 INFO L290 TraceCheckUtils]: 22: Hoare triple {42#false} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {42#false} is VALID [2022-04-08 13:08:53,029 INFO L290 TraceCheckUtils]: 23: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-08 13:08:53,029 INFO L272 TraceCheckUtils]: 24: Hoare triple {42#false} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {42#false} is VALID [2022-04-08 13:08:53,029 INFO L290 TraceCheckUtils]: 25: Hoare triple {42#false} ~cond := #in~cond; {42#false} is VALID [2022-04-08 13:08:53,029 INFO L290 TraceCheckUtils]: 26: Hoare triple {42#false} assume 0 == ~cond; {42#false} is VALID [2022-04-08 13:08:53,029 INFO L290 TraceCheckUtils]: 27: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-08 13:08:53,030 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-08 13:08:53,030 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 13:08:53,030 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1572549936] [2022-04-08 13:08:53,031 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1572549936] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 13:08:53,031 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 13:08:53,031 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 13:08:53,033 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 13:08:53,033 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1555295289] [2022-04-08 13:08:53,033 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1555295289] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 13:08:53,033 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 13:08:53,033 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 13:08:53,033 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1116491184] [2022-04-08 13:08:53,034 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 13:08:53,037 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-08 13:08:53,039 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 13:08:53,041 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 13:08:53,061 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:08:53,061 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 13:08:53,062 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 13:08:53,075 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 13:08:53,076 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 13:08:53,078 INFO L87 Difference]: Start difference. First operand has 38 states, 20 states have (on average 1.5) internal successors, (30), 21 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 13:08:53,263 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:08:53,263 INFO L93 Difference]: Finished difference Result 69 states and 110 transitions. [2022-04-08 13:08:53,264 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 13:08:53,264 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-08 13:08:53,264 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 13:08:53,265 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 13:08:53,272 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-08 13:08:53,272 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 13:08:53,277 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-08 13:08:53,278 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 110 transitions. [2022-04-08 13:08:53,434 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:08:53,447 INFO L225 Difference]: With dead ends: 69 [2022-04-08 13:08:53,448 INFO L226 Difference]: Without dead ends: 33 [2022-04-08 13:08:53,452 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 13:08:53,455 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 21 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 12 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 12 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 13:08:53,455 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 41 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 12 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 13:08:53,466 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states. [2022-04-08 13:08:53,476 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 33. [2022-04-08 13:08:53,476 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 13:08:53,477 INFO L82 GeneralOperation]: Start isEquivalent. First operand 33 states. Second operand has 33 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 13:08:53,477 INFO L74 IsIncluded]: Start isIncluded. First operand 33 states. Second operand has 33 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 13:08:53,477 INFO L87 Difference]: Start difference. First operand 33 states. Second operand has 33 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 13:08:53,481 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:08:53,481 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-08 13:08:53,481 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-08 13:08:53,482 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 13:08:53,482 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 13:08:53,483 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 33 states. [2022-04-08 13:08:53,483 INFO L87 Difference]: Start difference. First operand has 33 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 33 states. [2022-04-08 13:08:53,486 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:08:53,486 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-08 13:08:53,486 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-08 13:08:53,487 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 13:08:53,487 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 13:08:53,487 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 13:08:53,487 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 13:08:53,488 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 13:08:53,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 43 transitions. [2022-04-08 13:08:53,491 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 43 transitions. Word has length 28 [2022-04-08 13:08:53,491 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 13:08:53,491 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 43 transitions. [2022-04-08 13:08:53,491 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-08 13:08:53,492 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 33 states and 43 transitions. [2022-04-08 13:08:53,546 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:08:53,547 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-08 13:08:53,548 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 13:08:53,548 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 13:08:53,548 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 13:08:53,549 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 13:08:53,549 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 13:08:53,552 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 13:08:53,552 INFO L85 PathProgramCache]: Analyzing trace with hash 1361835634, now seen corresponding path program 1 times [2022-04-08 13:08:53,552 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 13:08:53,552 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [892323129] [2022-04-08 13:08:53,559 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 13:08:53,559 INFO L85 PathProgramCache]: Analyzing trace with hash 1361835634, now seen corresponding path program 2 times [2022-04-08 13:08:53,559 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 13:08:53,560 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [50395265] [2022-04-08 13:08:53,560 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 13:08:53,560 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 13:08:53,599 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:53,650 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 13:08:53,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:53,656 INFO L290 TraceCheckUtils]: 0: Hoare triple {351#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(9, 2);call #Ultimate.allocInit(12, 3); {331#true} is VALID [2022-04-08 13:08:53,657 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-08 13:08:53,657 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {331#true} {331#true} #101#return; {331#true} is VALID [2022-04-08 13:08:53,657 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 13:08:53,658 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:53,661 INFO L290 TraceCheckUtils]: 0: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-08 13:08:53,661 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-08 13:08:53,662 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-08 13:08:53,662 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} #81#return; {331#true} is VALID [2022-04-08 13:08:53,662 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-08 13:08:53,663 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:53,666 INFO L290 TraceCheckUtils]: 0: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-08 13:08:53,666 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-08 13:08:53,666 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-08 13:08:53,679 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} #83#return; {331#true} is VALID [2022-04-08 13:08:53,679 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-08 13:08:53,680 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:53,688 INFO L290 TraceCheckUtils]: 0: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-08 13:08:53,688 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-08 13:08:53,689 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-08 13:08:53,689 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} #85#return; {331#true} is VALID [2022-04-08 13:08:53,689 INFO L272 TraceCheckUtils]: 0: Hoare triple {331#true} call ULTIMATE.init(); {351#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 13:08:53,690 INFO L290 TraceCheckUtils]: 1: Hoare triple {351#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(9, 2);call #Ultimate.allocInit(12, 3); {331#true} is VALID [2022-04-08 13:08:53,690 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-08 13:08:53,690 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} #101#return; {331#true} is VALID [2022-04-08 13:08:53,690 INFO L272 TraceCheckUtils]: 4: Hoare triple {331#true} call #t~ret6 := main(); {331#true} is VALID [2022-04-08 13:08:53,690 INFO L290 TraceCheckUtils]: 5: Hoare triple {331#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4; {331#true} is VALID [2022-04-08 13:08:53,690 INFO L272 TraceCheckUtils]: 6: Hoare triple {331#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {331#true} is VALID [2022-04-08 13:08:53,690 INFO L290 TraceCheckUtils]: 7: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-08 13:08:53,691 INFO L290 TraceCheckUtils]: 8: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-08 13:08:53,691 INFO L290 TraceCheckUtils]: 9: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-08 13:08:53,691 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {331#true} {331#true} #81#return; {331#true} is VALID [2022-04-08 13:08:53,691 INFO L290 TraceCheckUtils]: 11: Hoare triple {331#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {331#true} is VALID [2022-04-08 13:08:53,691 INFO L272 TraceCheckUtils]: 12: Hoare triple {331#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {331#true} is VALID [2022-04-08 13:08:53,691 INFO L290 TraceCheckUtils]: 13: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-08 13:08:53,692 INFO L290 TraceCheckUtils]: 14: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-08 13:08:53,692 INFO L290 TraceCheckUtils]: 15: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-08 13:08:53,692 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {331#true} {331#true} #83#return; {331#true} is VALID [2022-04-08 13:08:53,692 INFO L272 TraceCheckUtils]: 17: Hoare triple {331#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {331#true} is VALID [2022-04-08 13:08:53,692 INFO L290 TraceCheckUtils]: 18: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-08 13:08:53,692 INFO L290 TraceCheckUtils]: 19: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-08 13:08:53,693 INFO L290 TraceCheckUtils]: 20: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-08 13:08:53,693 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {331#true} {331#true} #85#return; {331#true} is VALID [2022-04-08 13:08:53,693 INFO L290 TraceCheckUtils]: 22: Hoare triple {331#true} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {348#(= main_~q~0 0)} is VALID [2022-04-08 13:08:53,693 INFO L290 TraceCheckUtils]: 23: Hoare triple {348#(= main_~q~0 0)} assume !false; {348#(= main_~q~0 0)} is VALID [2022-04-08 13:08:53,694 INFO L272 TraceCheckUtils]: 24: Hoare triple {348#(= main_~q~0 0)} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {349#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 13:08:53,695 INFO L290 TraceCheckUtils]: 25: Hoare triple {349#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {350#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 13:08:53,695 INFO L290 TraceCheckUtils]: 26: Hoare triple {350#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {332#false} is VALID [2022-04-08 13:08:53,695 INFO L290 TraceCheckUtils]: 27: Hoare triple {332#false} assume !false; {332#false} is VALID [2022-04-08 13:08:53,695 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-08 13:08:53,696 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 13:08:53,696 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [50395265] [2022-04-08 13:08:53,696 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [50395265] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 13:08:53,696 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 13:08:53,696 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 13:08:53,697 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 13:08:53,697 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [892323129] [2022-04-08 13:08:53,697 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [892323129] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 13:08:53,697 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 13:08:53,697 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 13:08:53,697 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1960653878] [2022-04-08 13:08:53,697 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 13:08:53,698 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-08 13:08:53,698 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 13:08:53,698 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 13:08:53,713 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:08:53,713 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 13:08:53,713 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 13:08:53,714 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 13:08:53,714 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-08 13:08:53,714 INFO L87 Difference]: Start difference. First operand 33 states and 43 transitions. Second operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 13:08:54,077 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:08:54,077 INFO L93 Difference]: Finished difference Result 46 states and 60 transitions. [2022-04-08 13:08:54,077 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 13:08:54,077 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-08 13:08:54,078 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 13:08:54,078 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 13:08:54,080 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-08 13:08:54,080 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 13:08:54,082 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-08 13:08:54,082 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 60 transitions. [2022-04-08 13:08:54,136 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:08:54,138 INFO L225 Difference]: With dead ends: 46 [2022-04-08 13:08:54,138 INFO L226 Difference]: Without dead ends: 44 [2022-04-08 13:08:54,138 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=28, Invalid=62, Unknown=0, NotChecked=0, Total=90 [2022-04-08 13:08:54,139 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 38 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 126 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 44 SdHoareTripleChecker+Valid, 48 SdHoareTripleChecker+Invalid, 155 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 126 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 13:08:54,140 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [44 Valid, 48 Invalid, 155 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 126 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 13:08:54,141 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-08 13:08:54,145 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 37. [2022-04-08 13:08:54,145 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 13:08:54,146 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand has 37 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 13:08:54,146 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand has 37 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 13:08:54,146 INFO L87 Difference]: Start difference. First operand 44 states. Second operand has 37 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 13:08:54,149 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:08:54,149 INFO L93 Difference]: Finished difference Result 44 states and 58 transitions. [2022-04-08 13:08:54,149 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 58 transitions. [2022-04-08 13:08:54,149 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 13:08:54,149 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 13:08:54,150 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 44 states. [2022-04-08 13:08:54,150 INFO L87 Difference]: Start difference. First operand has 37 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 44 states. [2022-04-08 13:08:54,152 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:08:54,152 INFO L93 Difference]: Finished difference Result 44 states and 58 transitions. [2022-04-08 13:08:54,153 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 58 transitions. [2022-04-08 13:08:54,153 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 13:08:54,153 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 13:08:54,153 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 13:08:54,153 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 13:08:54,154 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 13:08:54,157 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 46 transitions. [2022-04-08 13:08:54,157 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 46 transitions. Word has length 28 [2022-04-08 13:08:54,157 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 13:08:54,157 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 46 transitions. [2022-04-08 13:08:54,157 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 13:08:54,157 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 46 transitions. [2022-04-08 13:08:54,197 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:08:54,197 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 46 transitions. [2022-04-08 13:08:54,198 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-08 13:08:54,198 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 13:08:54,198 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 13:08:54,198 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-08 13:08:54,199 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 13:08:54,199 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 13:08:54,199 INFO L85 PathProgramCache]: Analyzing trace with hash 1382067636, now seen corresponding path program 1 times [2022-04-08 13:08:54,199 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 13:08:54,202 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [241233857] [2022-04-08 13:08:54,203 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 13:08:54,203 INFO L85 PathProgramCache]: Analyzing trace with hash 1382067636, now seen corresponding path program 2 times [2022-04-08 13:08:54,203 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 13:08:54,204 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [166047767] [2022-04-08 13:08:54,204 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 13:08:54,204 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 13:08:54,242 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:54,323 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 13:08:54,325 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:54,328 INFO L290 TraceCheckUtils]: 0: Hoare triple {640#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(9, 2);call #Ultimate.allocInit(12, 3); {616#true} is VALID [2022-04-08 13:08:54,328 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 13:08:54,328 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {616#true} {616#true} #101#return; {616#true} is VALID [2022-04-08 13:08:54,328 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 13:08:54,329 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:54,332 INFO L290 TraceCheckUtils]: 0: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-08 13:08:54,332 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-08 13:08:54,332 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 13:08:54,332 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {616#true} #81#return; {616#true} is VALID [2022-04-08 13:08:54,332 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-08 13:08:54,333 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:54,335 INFO L290 TraceCheckUtils]: 0: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-08 13:08:54,335 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-08 13:08:54,336 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 13:08:54,336 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {616#true} #83#return; {616#true} is VALID [2022-04-08 13:08:54,336 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-08 13:08:54,336 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:54,339 INFO L290 TraceCheckUtils]: 0: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-08 13:08:54,339 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-08 13:08:54,339 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 13:08:54,339 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {616#true} #85#return; {616#true} is VALID [2022-04-08 13:08:54,339 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2022-04-08 13:08:54,341 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:54,344 INFO L290 TraceCheckUtils]: 0: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-08 13:08:54,344 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-08 13:08:54,344 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 13:08:54,345 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {633#(= main_~A~0 main_~r~0)} #87#return; {633#(= main_~A~0 main_~r~0)} is VALID [2022-04-08 13:08:54,345 INFO L272 TraceCheckUtils]: 0: Hoare triple {616#true} call ULTIMATE.init(); {640#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 13:08:54,346 INFO L290 TraceCheckUtils]: 1: Hoare triple {640#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(9, 2);call #Ultimate.allocInit(12, 3); {616#true} is VALID [2022-04-08 13:08:54,346 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 13:08:54,346 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {616#true} #101#return; {616#true} is VALID [2022-04-08 13:08:54,346 INFO L272 TraceCheckUtils]: 4: Hoare triple {616#true} call #t~ret6 := main(); {616#true} is VALID [2022-04-08 13:08:54,346 INFO L290 TraceCheckUtils]: 5: Hoare triple {616#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4; {616#true} is VALID [2022-04-08 13:08:54,346 INFO L272 TraceCheckUtils]: 6: Hoare triple {616#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {616#true} is VALID [2022-04-08 13:08:54,346 INFO L290 TraceCheckUtils]: 7: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-08 13:08:54,346 INFO L290 TraceCheckUtils]: 8: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-08 13:08:54,347 INFO L290 TraceCheckUtils]: 9: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 13:08:54,347 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {616#true} {616#true} #81#return; {616#true} is VALID [2022-04-08 13:08:54,347 INFO L290 TraceCheckUtils]: 11: Hoare triple {616#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {616#true} is VALID [2022-04-08 13:08:54,347 INFO L272 TraceCheckUtils]: 12: Hoare triple {616#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {616#true} is VALID [2022-04-08 13:08:54,347 INFO L290 TraceCheckUtils]: 13: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-08 13:08:54,347 INFO L290 TraceCheckUtils]: 14: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-08 13:08:54,347 INFO L290 TraceCheckUtils]: 15: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 13:08:54,348 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {616#true} {616#true} #83#return; {616#true} is VALID [2022-04-08 13:08:54,348 INFO L272 TraceCheckUtils]: 17: Hoare triple {616#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {616#true} is VALID [2022-04-08 13:08:54,348 INFO L290 TraceCheckUtils]: 18: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-08 13:08:54,348 INFO L290 TraceCheckUtils]: 19: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-08 13:08:54,348 INFO L290 TraceCheckUtils]: 20: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 13:08:54,348 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {616#true} {616#true} #85#return; {616#true} is VALID [2022-04-08 13:08:54,355 INFO L290 TraceCheckUtils]: 22: Hoare triple {616#true} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {633#(= main_~A~0 main_~r~0)} is VALID [2022-04-08 13:08:54,355 INFO L290 TraceCheckUtils]: 23: Hoare triple {633#(= main_~A~0 main_~r~0)} assume !false; {633#(= main_~A~0 main_~r~0)} is VALID [2022-04-08 13:08:54,356 INFO L272 TraceCheckUtils]: 24: Hoare triple {633#(= main_~A~0 main_~r~0)} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {616#true} is VALID [2022-04-08 13:08:54,356 INFO L290 TraceCheckUtils]: 25: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-08 13:08:54,356 INFO L290 TraceCheckUtils]: 26: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-08 13:08:54,356 INFO L290 TraceCheckUtils]: 27: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-08 13:08:54,357 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {616#true} {633#(= main_~A~0 main_~r~0)} #87#return; {633#(= main_~A~0 main_~r~0)} is VALID [2022-04-08 13:08:54,358 INFO L272 TraceCheckUtils]: 29: Hoare triple {633#(= main_~A~0 main_~r~0)} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {638#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 13:08:54,358 INFO L290 TraceCheckUtils]: 30: Hoare triple {638#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {639#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 13:08:54,358 INFO L290 TraceCheckUtils]: 31: Hoare triple {639#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {617#false} is VALID [2022-04-08 13:08:54,359 INFO L290 TraceCheckUtils]: 32: Hoare triple {617#false} assume !false; {617#false} is VALID [2022-04-08 13:08:54,359 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-08 13:08:54,359 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 13:08:54,359 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [166047767] [2022-04-08 13:08:54,359 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [166047767] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 13:08:54,359 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 13:08:54,359 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 13:08:54,360 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 13:08:54,360 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [241233857] [2022-04-08 13:08:54,361 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [241233857] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 13:08:54,361 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 13:08:54,361 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 13:08:54,362 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1084266560] [2022-04-08 13:08:54,362 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 13:08:54,362 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-08 13:08:54,362 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 13:08:54,362 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 13:08:54,382 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:08:54,382 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 13:08:54,382 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 13:08:54,383 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 13:08:54,383 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-08 13:08:54,383 INFO L87 Difference]: Start difference. First operand 37 states and 46 transitions. Second operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 13:08:54,735 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:08:54,735 INFO L93 Difference]: Finished difference Result 50 states and 63 transitions. [2022-04-08 13:08:54,735 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 13:08:54,735 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-08 13:08:54,736 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 13:08:54,736 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 13:08:54,737 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-08 13:08:54,738 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 13:08:54,739 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-08 13:08:54,739 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 60 transitions. [2022-04-08 13:08:54,804 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:08:54,805 INFO L225 Difference]: With dead ends: 50 [2022-04-08 13:08:54,805 INFO L226 Difference]: Without dead ends: 48 [2022-04-08 13:08:54,806 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=28, Invalid=62, Unknown=0, NotChecked=0, Total=90 [2022-04-08 13:08:54,806 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 33 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 132 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 48 SdHoareTripleChecker+Invalid, 160 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 132 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 13:08:54,807 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [39 Valid, 48 Invalid, 160 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 132 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 13:08:54,807 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-08 13:08:54,811 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 41. [2022-04-08 13:08:54,811 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 13:08:54,812 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 41 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 states have internal predecessors, (27), 12 states have call successors, (12), 6 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 13:08:54,812 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 41 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 states have internal predecessors, (27), 12 states have call successors, (12), 6 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 13:08:54,812 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 41 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 states have internal predecessors, (27), 12 states have call successors, (12), 6 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 13:08:54,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:08:54,814 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-08 13:08:54,814 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-08 13:08:54,815 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 13:08:54,815 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 13:08:54,815 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 states have internal predecessors, (27), 12 states have call successors, (12), 6 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 48 states. [2022-04-08 13:08:54,816 INFO L87 Difference]: Start difference. First operand has 41 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 states have internal predecessors, (27), 12 states have call successors, (12), 6 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 48 states. [2022-04-08 13:08:54,817 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:08:54,817 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-08 13:08:54,817 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-08 13:08:54,818 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 13:08:54,818 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 13:08:54,818 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 13:08:54,818 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 13:08:54,818 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 23 states have (on average 1.173913043478261) internal successors, (27), 24 states have internal predecessors, (27), 12 states have call successors, (12), 6 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 13:08:54,820 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 49 transitions. [2022-04-08 13:08:54,820 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 49 transitions. Word has length 33 [2022-04-08 13:08:54,820 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 13:08:54,820 INFO L478 AbstractCegarLoop]: Abstraction has 41 states and 49 transitions. [2022-04-08 13:08:54,820 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 13:08:54,820 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 41 states and 49 transitions. [2022-04-08 13:08:54,859 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:08:54,859 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 49 transitions. [2022-04-08 13:08:54,860 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-08 13:08:54,860 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 13:08:54,860 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 13:08:54,860 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-04-08 13:08:54,860 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 13:08:54,861 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 13:08:54,861 INFO L85 PathProgramCache]: Analyzing trace with hash -1455208590, now seen corresponding path program 1 times [2022-04-08 13:08:54,861 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 13:08:54,861 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1311119110] [2022-04-08 13:08:54,861 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 13:08:54,861 INFO L85 PathProgramCache]: Analyzing trace with hash -1455208590, now seen corresponding path program 2 times [2022-04-08 13:08:54,861 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 13:08:54,861 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [920803784] [2022-04-08 13:08:54,862 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 13:08:54,862 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 13:08:54,876 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 13:08:54,876 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1688937843] [2022-04-08 13:08:54,876 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 13:08:54,877 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 13:08:54,877 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 13:08:54,878 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 13:08:54,911 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-08 13:08:54,948 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 13:08:54,948 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 13:08:54,950 INFO L263 TraceCheckSpWp]: Trace formula consists of 106 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 13:08:54,982 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:54,986 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 13:08:55,171 INFO L272 TraceCheckUtils]: 0: Hoare triple {929#true} call ULTIMATE.init(); {929#true} is VALID [2022-04-08 13:08:55,171 INFO L290 TraceCheckUtils]: 1: Hoare triple {929#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(9, 2);call #Ultimate.allocInit(12, 3); {929#true} is VALID [2022-04-08 13:08:55,171 INFO L290 TraceCheckUtils]: 2: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-08 13:08:55,174 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {929#true} {929#true} #101#return; {929#true} is VALID [2022-04-08 13:08:55,174 INFO L272 TraceCheckUtils]: 4: Hoare triple {929#true} call #t~ret6 := main(); {929#true} is VALID [2022-04-08 13:08:55,174 INFO L290 TraceCheckUtils]: 5: Hoare triple {929#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4; {929#true} is VALID [2022-04-08 13:08:55,174 INFO L272 TraceCheckUtils]: 6: Hoare triple {929#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {929#true} is VALID [2022-04-08 13:08:55,174 INFO L290 TraceCheckUtils]: 7: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-08 13:08:55,174 INFO L290 TraceCheckUtils]: 8: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-08 13:08:55,174 INFO L290 TraceCheckUtils]: 9: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-08 13:08:55,175 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {929#true} {929#true} #81#return; {929#true} is VALID [2022-04-08 13:08:55,175 INFO L290 TraceCheckUtils]: 11: Hoare triple {929#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {929#true} is VALID [2022-04-08 13:08:55,175 INFO L272 TraceCheckUtils]: 12: Hoare triple {929#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {929#true} is VALID [2022-04-08 13:08:55,175 INFO L290 TraceCheckUtils]: 13: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-08 13:08:55,175 INFO L290 TraceCheckUtils]: 14: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-08 13:08:55,175 INFO L290 TraceCheckUtils]: 15: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-08 13:08:55,175 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {929#true} {929#true} #83#return; {929#true} is VALID [2022-04-08 13:08:55,175 INFO L272 TraceCheckUtils]: 17: Hoare triple {929#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {929#true} is VALID [2022-04-08 13:08:55,176 INFO L290 TraceCheckUtils]: 18: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-08 13:08:55,176 INFO L290 TraceCheckUtils]: 19: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-08 13:08:55,176 INFO L290 TraceCheckUtils]: 20: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-08 13:08:55,176 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {929#true} {929#true} #85#return; {929#true} is VALID [2022-04-08 13:08:55,178 INFO L290 TraceCheckUtils]: 22: Hoare triple {929#true} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {1000#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-08 13:08:55,178 INFO L290 TraceCheckUtils]: 23: Hoare triple {1000#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} assume !false; {1000#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-08 13:08:55,178 INFO L272 TraceCheckUtils]: 24: Hoare triple {1000#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {929#true} is VALID [2022-04-08 13:08:55,178 INFO L290 TraceCheckUtils]: 25: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-08 13:08:55,178 INFO L290 TraceCheckUtils]: 26: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-08 13:08:55,179 INFO L290 TraceCheckUtils]: 27: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-08 13:08:55,180 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {929#true} {1000#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} #87#return; {1000#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-08 13:08:55,180 INFO L272 TraceCheckUtils]: 29: Hoare triple {1000#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {929#true} is VALID [2022-04-08 13:08:55,180 INFO L290 TraceCheckUtils]: 30: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-08 13:08:55,180 INFO L290 TraceCheckUtils]: 31: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-08 13:08:55,189 INFO L290 TraceCheckUtils]: 32: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-08 13:08:55,190 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {929#true} {1000#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} #89#return; {1000#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-08 13:08:55,191 INFO L272 TraceCheckUtils]: 34: Hoare triple {1000#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {1037#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 13:08:55,191 INFO L290 TraceCheckUtils]: 35: Hoare triple {1037#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1041#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 13:08:55,192 INFO L290 TraceCheckUtils]: 36: Hoare triple {1041#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {930#false} is VALID [2022-04-08 13:08:55,192 INFO L290 TraceCheckUtils]: 37: Hoare triple {930#false} assume !false; {930#false} is VALID [2022-04-08 13:08:55,193 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-08 13:08:55,193 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 13:08:55,193 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 13:08:55,193 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [920803784] [2022-04-08 13:08:55,193 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 13:08:55,193 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1688937843] [2022-04-08 13:08:55,193 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1688937843] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 13:08:55,194 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 13:08:55,194 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 13:08:55,194 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 13:08:55,194 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1311119110] [2022-04-08 13:08:55,194 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1311119110] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 13:08:55,194 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 13:08:55,194 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 13:08:55,194 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [308310508] [2022-04-08 13:08:55,195 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 13:08:55,195 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, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 38 [2022-04-08 13:08:55,195 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 13:08:55,195 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, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 13:08:55,218 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:08:55,218 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 13:08:55,219 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 13:08:55,219 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 13:08:55,219 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 13:08:55,219 INFO L87 Difference]: Start difference. First operand 41 states and 49 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, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 13:08:57,360 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [] [2022-04-08 13:08:57,571 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:08:57,571 INFO L93 Difference]: Finished difference Result 58 states and 73 transitions. [2022-04-08 13:08:57,571 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 13:08:57,571 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, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 38 [2022-04-08 13:08:57,571 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 13:08:57,571 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, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 13:08:57,573 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-08 13:08:57,573 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, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 13:08:57,574 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-08 13:08:57,574 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 67 transitions. [2022-04-08 13:08:57,628 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:08:57,630 INFO L225 Difference]: With dead ends: 58 [2022-04-08 13:08:57,630 INFO L226 Difference]: Without dead ends: 55 [2022-04-08 13:08:57,630 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 34 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-08 13:08:57,631 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 8 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 49 mSolverCounterSat, 2 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 142 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 49 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.0s IncrementalHoareTripleChecker+Time [2022-04-08 13:08:57,631 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 142 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 49 Invalid, 1 Unknown, 0 Unchecked, 2.0s Time] [2022-04-08 13:08:57,632 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-08 13:08:57,640 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 55. [2022-04-08 13:08:57,641 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 13:08:57,641 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 55 states, 30 states have (on average 1.2) internal successors, (36), 32 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 13:08:57,641 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 55 states, 30 states have (on average 1.2) internal successors, (36), 32 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 13:08:57,642 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 55 states, 30 states have (on average 1.2) internal successors, (36), 32 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 13:08:57,644 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:08:57,644 INFO L93 Difference]: Finished difference Result 55 states and 69 transitions. [2022-04-08 13:08:57,644 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 69 transitions. [2022-04-08 13:08:57,644 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 13:08:57,644 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 13:08:57,644 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 30 states have (on average 1.2) internal successors, (36), 32 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 55 states. [2022-04-08 13:08:57,645 INFO L87 Difference]: Start difference. First operand has 55 states, 30 states have (on average 1.2) internal successors, (36), 32 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 55 states. [2022-04-08 13:08:57,647 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:08:57,647 INFO L93 Difference]: Finished difference Result 55 states and 69 transitions. [2022-04-08 13:08:57,647 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 69 transitions. [2022-04-08 13:08:57,647 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 13:08:57,647 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 13:08:57,647 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 13:08:57,647 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 13:08:57,648 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 30 states have (on average 1.2) internal successors, (36), 32 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 13:08:57,649 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 69 transitions. [2022-04-08 13:08:57,649 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 69 transitions. Word has length 38 [2022-04-08 13:08:57,649 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 13:08:57,650 INFO L478 AbstractCegarLoop]: Abstraction has 55 states and 69 transitions. [2022-04-08 13:08:57,650 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, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 13:08:57,650 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 55 states and 69 transitions. [2022-04-08 13:08:57,731 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:08:57,732 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 69 transitions. [2022-04-08 13:08:57,732 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-08 13:08:57,732 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 13:08:57,732 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 13:08:57,753 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-08 13:08:57,933 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 13:08:57,933 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 13:08:57,934 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 13:08:57,934 INFO L85 PathProgramCache]: Analyzing trace with hash -1688067263, now seen corresponding path program 1 times [2022-04-08 13:08:57,934 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 13:08:57,934 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [376493532] [2022-04-08 13:08:57,934 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 13:08:57,934 INFO L85 PathProgramCache]: Analyzing trace with hash -1688067263, now seen corresponding path program 2 times [2022-04-08 13:08:57,935 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 13:08:57,935 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [95541545] [2022-04-08 13:08:57,935 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 13:08:57,935 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 13:08:57,954 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 13:08:57,954 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [763331875] [2022-04-08 13:08:57,954 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 13:08:57,954 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 13:08:57,955 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 13:08:57,955 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 13:08:57,956 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-08 13:08:57,997 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 13:08:57,997 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 13:08:57,998 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 13:08:58,009 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:08:58,010 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 13:08:59,244 INFO L272 TraceCheckUtils]: 0: Hoare triple {1385#true} call ULTIMATE.init(); {1385#true} is VALID [2022-04-08 13:08:59,244 INFO L290 TraceCheckUtils]: 1: Hoare triple {1385#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(9, 2);call #Ultimate.allocInit(12, 3); {1385#true} is VALID [2022-04-08 13:08:59,244 INFO L290 TraceCheckUtils]: 2: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-08 13:08:59,244 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1385#true} {1385#true} #101#return; {1385#true} is VALID [2022-04-08 13:08:59,244 INFO L272 TraceCheckUtils]: 4: Hoare triple {1385#true} call #t~ret6 := main(); {1385#true} is VALID [2022-04-08 13:08:59,244 INFO L290 TraceCheckUtils]: 5: Hoare triple {1385#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; {1385#true} is VALID [2022-04-08 13:08:59,245 INFO L272 TraceCheckUtils]: 6: Hoare triple {1385#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {1385#true} is VALID [2022-04-08 13:08:59,245 INFO L290 TraceCheckUtils]: 7: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-08 13:08:59,245 INFO L290 TraceCheckUtils]: 8: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-08 13:08:59,245 INFO L290 TraceCheckUtils]: 9: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-08 13:08:59,245 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1385#true} {1385#true} #81#return; {1385#true} is VALID [2022-04-08 13:08:59,245 INFO L290 TraceCheckUtils]: 11: Hoare triple {1385#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {1385#true} is VALID [2022-04-08 13:08:59,245 INFO L272 TraceCheckUtils]: 12: Hoare triple {1385#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {1385#true} is VALID [2022-04-08 13:08:59,249 INFO L290 TraceCheckUtils]: 13: Hoare triple {1385#true} ~cond := #in~cond; {1429#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 13:08:59,249 INFO L290 TraceCheckUtils]: 14: Hoare triple {1429#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1433#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 13:08:59,250 INFO L290 TraceCheckUtils]: 15: Hoare triple {1433#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1433#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 13:08:59,250 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1433#(not (= |assume_abort_if_not_#in~cond| 0))} {1385#true} #83#return; {1440#(<= (mod main_~B~0 4294967296) 2)} is VALID [2022-04-08 13:08:59,250 INFO L272 TraceCheckUtils]: 17: Hoare triple {1440#(<= (mod main_~B~0 4294967296) 2)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {1385#true} is VALID [2022-04-08 13:08:59,250 INFO L290 TraceCheckUtils]: 18: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-08 13:08:59,251 INFO L290 TraceCheckUtils]: 19: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-08 13:08:59,251 INFO L290 TraceCheckUtils]: 20: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-08 13:08:59,251 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1385#true} {1440#(<= (mod main_~B~0 4294967296) 2)} #85#return; {1440#(<= (mod main_~B~0 4294967296) 2)} is VALID [2022-04-08 13:08:59,251 INFO L290 TraceCheckUtils]: 22: Hoare triple {1440#(<= (mod main_~B~0 4294967296) 2)} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {1459#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} is VALID [2022-04-08 13:08:59,252 INFO L290 TraceCheckUtils]: 23: Hoare triple {1459#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} assume !false; {1459#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} is VALID [2022-04-08 13:08:59,252 INFO L272 TraceCheckUtils]: 24: Hoare triple {1459#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {1385#true} is VALID [2022-04-08 13:08:59,252 INFO L290 TraceCheckUtils]: 25: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-08 13:08:59,252 INFO L290 TraceCheckUtils]: 26: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-08 13:08:59,252 INFO L290 TraceCheckUtils]: 27: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-08 13:08:59,253 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1385#true} {1459#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} #87#return; {1459#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} is VALID [2022-04-08 13:08:59,253 INFO L272 TraceCheckUtils]: 29: Hoare triple {1459#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {1385#true} is VALID [2022-04-08 13:08:59,253 INFO L290 TraceCheckUtils]: 30: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-08 13:08:59,253 INFO L290 TraceCheckUtils]: 31: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-08 13:08:59,253 INFO L290 TraceCheckUtils]: 32: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-08 13:08:59,255 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1385#true} {1459#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} #89#return; {1459#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} is VALID [2022-04-08 13:08:59,255 INFO L272 TraceCheckUtils]: 34: Hoare triple {1459#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {1385#true} is VALID [2022-04-08 13:08:59,255 INFO L290 TraceCheckUtils]: 35: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-08 13:08:59,255 INFO L290 TraceCheckUtils]: 36: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-08 13:08:59,255 INFO L290 TraceCheckUtils]: 37: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-08 13:08:59,256 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1385#true} {1459#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} #91#return; {1459#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} is VALID [2022-04-08 13:08:59,256 INFO L290 TraceCheckUtils]: 39: Hoare triple {1459#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} assume !(~r~0 % 4294967296 >= ~d~0 % 4294967296); {1511#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (not (<= (mod main_~B~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} is VALID [2022-04-08 13:08:59,257 INFO L290 TraceCheckUtils]: 40: Hoare triple {1511#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (not (<= (mod main_~B~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} assume !false; {1511#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (not (<= (mod main_~B~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} is VALID [2022-04-08 13:08:59,257 INFO L272 TraceCheckUtils]: 41: Hoare triple {1511#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (not (<= (mod main_~B~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == (~q~0 * ~B~0 + ~r~0) % 4294967296 then 1 else 0)); {1518#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 13:08:59,258 INFO L290 TraceCheckUtils]: 42: Hoare triple {1518#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1522#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 13:08:59,258 INFO L290 TraceCheckUtils]: 43: Hoare triple {1522#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1386#false} is VALID [2022-04-08 13:08:59,258 INFO L290 TraceCheckUtils]: 44: Hoare triple {1386#false} assume !false; {1386#false} is VALID [2022-04-08 13:08:59,259 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 9 proven. 3 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-04-08 13:08:59,259 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 13:08:59,683 INFO L290 TraceCheckUtils]: 44: Hoare triple {1386#false} assume !false; {1386#false} is VALID [2022-04-08 13:08:59,683 INFO L290 TraceCheckUtils]: 43: Hoare triple {1522#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1386#false} is VALID [2022-04-08 13:08:59,684 INFO L290 TraceCheckUtils]: 42: Hoare triple {1518#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1522#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 13:08:59,685 INFO L272 TraceCheckUtils]: 41: Hoare triple {1538#(= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296))} call __VERIFIER_assert((if ~A~0 % 4294967296 == (~q~0 * ~B~0 + ~r~0) % 4294967296 then 1 else 0)); {1518#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 13:08:59,685 INFO L290 TraceCheckUtils]: 40: Hoare triple {1538#(= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296))} assume !false; {1538#(= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296))} is VALID [2022-04-08 13:08:59,685 INFO L290 TraceCheckUtils]: 39: Hoare triple {1545#(or (= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} assume !(~r~0 % 4294967296 >= ~d~0 % 4294967296); {1538#(= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296))} is VALID [2022-04-08 13:08:59,686 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1385#true} {1545#(or (= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} #91#return; {1545#(or (= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-08 13:08:59,686 INFO L290 TraceCheckUtils]: 37: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-08 13:08:59,686 INFO L290 TraceCheckUtils]: 36: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-08 13:08:59,686 INFO L290 TraceCheckUtils]: 35: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-08 13:08:59,686 INFO L272 TraceCheckUtils]: 34: Hoare triple {1545#(or (= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {1385#true} is VALID [2022-04-08 13:08:59,687 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1385#true} {1545#(or (= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} #89#return; {1545#(or (= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-08 13:08:59,688 INFO L290 TraceCheckUtils]: 32: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-08 13:08:59,688 INFO L290 TraceCheckUtils]: 31: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-08 13:08:59,688 INFO L290 TraceCheckUtils]: 30: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-08 13:08:59,688 INFO L272 TraceCheckUtils]: 29: Hoare triple {1545#(or (= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {1385#true} is VALID [2022-04-08 13:08:59,688 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1385#true} {1545#(or (= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} #87#return; {1545#(or (= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-08 13:08:59,689 INFO L290 TraceCheckUtils]: 27: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-08 13:08:59,689 INFO L290 TraceCheckUtils]: 26: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-08 13:08:59,689 INFO L290 TraceCheckUtils]: 25: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-08 13:08:59,689 INFO L272 TraceCheckUtils]: 24: Hoare triple {1545#(or (= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {1385#true} is VALID [2022-04-08 13:08:59,689 INFO L290 TraceCheckUtils]: 23: Hoare triple {1545#(or (= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} assume !false; {1545#(or (= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-08 13:08:59,690 INFO L290 TraceCheckUtils]: 22: Hoare triple {1385#true} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {1545#(or (= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-08 13:08:59,690 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1385#true} {1385#true} #85#return; {1385#true} is VALID [2022-04-08 13:08:59,690 INFO L290 TraceCheckUtils]: 20: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-08 13:08:59,690 INFO L290 TraceCheckUtils]: 19: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-08 13:08:59,690 INFO L290 TraceCheckUtils]: 18: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-08 13:08:59,690 INFO L272 TraceCheckUtils]: 17: Hoare triple {1385#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {1385#true} is VALID [2022-04-08 13:08:59,690 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1385#true} {1385#true} #83#return; {1385#true} is VALID [2022-04-08 13:08:59,690 INFO L290 TraceCheckUtils]: 15: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-08 13:08:59,691 INFO L290 TraceCheckUtils]: 14: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-08 13:08:59,691 INFO L290 TraceCheckUtils]: 13: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-08 13:08:59,691 INFO L272 TraceCheckUtils]: 12: Hoare triple {1385#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {1385#true} is VALID [2022-04-08 13:08:59,691 INFO L290 TraceCheckUtils]: 11: Hoare triple {1385#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {1385#true} is VALID [2022-04-08 13:08:59,691 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1385#true} {1385#true} #81#return; {1385#true} is VALID [2022-04-08 13:08:59,691 INFO L290 TraceCheckUtils]: 9: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-08 13:08:59,691 INFO L290 TraceCheckUtils]: 8: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-08 13:08:59,691 INFO L290 TraceCheckUtils]: 7: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-08 13:08:59,691 INFO L272 TraceCheckUtils]: 6: Hoare triple {1385#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {1385#true} is VALID [2022-04-08 13:08:59,691 INFO L290 TraceCheckUtils]: 5: Hoare triple {1385#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; {1385#true} is VALID [2022-04-08 13:08:59,692 INFO L272 TraceCheckUtils]: 4: Hoare triple {1385#true} call #t~ret6 := main(); {1385#true} is VALID [2022-04-08 13:08:59,692 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1385#true} {1385#true} #101#return; {1385#true} is VALID [2022-04-08 13:08:59,692 INFO L290 TraceCheckUtils]: 2: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-08 13:08:59,692 INFO L290 TraceCheckUtils]: 1: Hoare triple {1385#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(9, 2);call #Ultimate.allocInit(12, 3); {1385#true} is VALID [2022-04-08 13:08:59,692 INFO L272 TraceCheckUtils]: 0: Hoare triple {1385#true} call ULTIMATE.init(); {1385#true} is VALID [2022-04-08 13:08:59,692 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 13:08:59,692 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 13:08:59,692 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [95541545] [2022-04-08 13:08:59,693 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 13:08:59,693 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [763331875] [2022-04-08 13:08:59,693 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [763331875] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 13:08:59,693 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 13:08:59,693 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-08 13:08:59,693 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 13:08:59,693 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [376493532] [2022-04-08 13:08:59,693 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [376493532] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 13:08:59,693 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 13:08:59,693 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 13:08:59,693 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [85510156] [2022-04-08 13:08:59,693 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 13:08:59,694 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 45 [2022-04-08 13:08:59,694 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 13:08:59,694 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 13:08:59,720 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:08:59,720 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 13:08:59,720 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 13:08:59,721 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 13:08:59,721 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-08 13:08:59,721 INFO L87 Difference]: Start difference. First operand 55 states and 69 transitions. Second operand has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 13:09:02,253 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:09:02,253 INFO L93 Difference]: Finished difference Result 68 states and 86 transitions. [2022-04-08 13:09:02,253 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 13:09:02,253 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 45 [2022-04-08 13:09:02,254 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 13:09:02,254 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 13:09:02,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-08 13:09:02,255 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 13:09:02,256 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-08 13:09:02,256 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-04-08 13:09:02,307 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:09:02,309 INFO L225 Difference]: With dead ends: 68 [2022-04-08 13:09:02,309 INFO L226 Difference]: Without dead ends: 66 [2022-04-08 13:09:02,309 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 90 GetRequests, 79 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=30, Invalid=102, Unknown=0, NotChecked=0, Total=132 [2022-04-08 13:09:02,310 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 12 mSDsluCounter, 109 mSDsCounter, 0 mSdLazyCounter, 68 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 151 SdHoareTripleChecker+Invalid, 69 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 68 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 13:09:02,310 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 151 Invalid, 69 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 68 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 13:09:02,310 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2022-04-08 13:09:02,325 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 64. [2022-04-08 13:09:02,325 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 13:09:02,326 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand has 64 states, 36 states have (on average 1.2222222222222223) internal successors, (44), 38 states have internal predecessors, (44), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 13:09:02,326 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand has 64 states, 36 states have (on average 1.2222222222222223) internal successors, (44), 38 states have internal predecessors, (44), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 13:09:02,328 INFO L87 Difference]: Start difference. First operand 66 states. Second operand has 64 states, 36 states have (on average 1.2222222222222223) internal successors, (44), 38 states have internal predecessors, (44), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 13:09:02,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:09:02,330 INFO L93 Difference]: Finished difference Result 66 states and 84 transitions. [2022-04-08 13:09:02,330 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 84 transitions. [2022-04-08 13:09:02,330 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 13:09:02,330 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 13:09:02,331 INFO L74 IsIncluded]: Start isIncluded. First operand has 64 states, 36 states have (on average 1.2222222222222223) internal successors, (44), 38 states have internal predecessors, (44), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) Second operand 66 states. [2022-04-08 13:09:02,331 INFO L87 Difference]: Start difference. First operand has 64 states, 36 states have (on average 1.2222222222222223) internal successors, (44), 38 states have internal predecessors, (44), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) Second operand 66 states. [2022-04-08 13:09:02,333 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:09:02,333 INFO L93 Difference]: Finished difference Result 66 states and 84 transitions. [2022-04-08 13:09:02,333 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 84 transitions. [2022-04-08 13:09:02,333 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 13:09:02,333 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 13:09:02,333 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 13:09:02,333 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 13:09:02,334 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 64 states, 36 states have (on average 1.2222222222222223) internal successors, (44), 38 states have internal predecessors, (44), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 13:09:02,335 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 81 transitions. [2022-04-08 13:09:02,335 INFO L78 Accepts]: Start accepts. Automaton has 64 states and 81 transitions. Word has length 45 [2022-04-08 13:09:02,335 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 13:09:02,336 INFO L478 AbstractCegarLoop]: Abstraction has 64 states and 81 transitions. [2022-04-08 13:09:02,336 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 13:09:02,336 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 64 states and 81 transitions. [2022-04-08 13:09:02,424 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:09:02,425 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 81 transitions. [2022-04-08 13:09:02,425 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-08 13:09:02,425 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 13:09:02,425 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 13:09:02,442 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-08 13:09:02,631 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 13:09:02,631 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 13:09:02,632 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 13:09:02,632 INFO L85 PathProgramCache]: Analyzing trace with hash -1471734606, now seen corresponding path program 1 times [2022-04-08 13:09:02,632 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 13:09:02,632 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2103666882] [2022-04-08 13:09:02,632 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 13:09:02,632 INFO L85 PathProgramCache]: Analyzing trace with hash -1471734606, now seen corresponding path program 2 times [2022-04-08 13:09:02,632 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 13:09:02,633 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [953759632] [2022-04-08 13:09:02,633 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 13:09:02,633 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 13:09:02,656 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 13:09:02,657 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [586402775] [2022-04-08 13:09:02,657 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 13:09:02,657 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 13:09:02,657 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 13:09:02,658 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 13:09:02,659 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-08 13:09:02,743 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 13:09:02,743 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 13:09:02,744 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-08 13:09:02,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:09:02,759 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 13:09:05,086 INFO L272 TraceCheckUtils]: 0: Hoare triple {2063#true} call ULTIMATE.init(); {2063#true} is VALID [2022-04-08 13:09:05,087 INFO L290 TraceCheckUtils]: 1: Hoare triple {2063#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(9, 2);call #Ultimate.allocInit(12, 3); {2063#true} is VALID [2022-04-08 13:09:05,087 INFO L290 TraceCheckUtils]: 2: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-08 13:09:05,087 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2063#true} {2063#true} #101#return; {2063#true} is VALID [2022-04-08 13:09:05,087 INFO L272 TraceCheckUtils]: 4: Hoare triple {2063#true} call #t~ret6 := main(); {2063#true} is VALID [2022-04-08 13:09:05,087 INFO L290 TraceCheckUtils]: 5: Hoare triple {2063#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; {2063#true} is VALID [2022-04-08 13:09:05,087 INFO L272 TraceCheckUtils]: 6: Hoare triple {2063#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {2063#true} is VALID [2022-04-08 13:09:05,087 INFO L290 TraceCheckUtils]: 7: Hoare triple {2063#true} ~cond := #in~cond; {2089#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 13:09:05,088 INFO L290 TraceCheckUtils]: 8: Hoare triple {2089#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2093#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 13:09:05,088 INFO L290 TraceCheckUtils]: 9: Hoare triple {2093#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2093#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 13:09:05,089 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2093#(not (= |assume_abort_if_not_#in~cond| 0))} {2063#true} #81#return; {2100#(<= (mod main_~A~0 4294967296) 2)} is VALID [2022-04-08 13:09:05,089 INFO L290 TraceCheckUtils]: 11: Hoare triple {2100#(<= (mod main_~A~0 4294967296) 2)} ~B~0 := #t~nondet5;havoc #t~nondet5; {2100#(<= (mod main_~A~0 4294967296) 2)} is VALID [2022-04-08 13:09:05,089 INFO L272 TraceCheckUtils]: 12: Hoare triple {2100#(<= (mod main_~A~0 4294967296) 2)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {2063#true} is VALID [2022-04-08 13:09:05,089 INFO L290 TraceCheckUtils]: 13: Hoare triple {2063#true} ~cond := #in~cond; {2089#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 13:09:05,090 INFO L290 TraceCheckUtils]: 14: Hoare triple {2089#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2093#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 13:09:05,090 INFO L290 TraceCheckUtils]: 15: Hoare triple {2093#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2093#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 13:09:05,090 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2093#(not (= |assume_abort_if_not_#in~cond| 0))} {2100#(<= (mod main_~A~0 4294967296) 2)} #83#return; {2119#(and (<= (mod main_~B~0 4294967296) 2) (<= (mod main_~A~0 4294967296) 2))} is VALID [2022-04-08 13:09:05,091 INFO L272 TraceCheckUtils]: 17: Hoare triple {2119#(and (<= (mod main_~B~0 4294967296) 2) (<= (mod main_~A~0 4294967296) 2))} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2063#true} is VALID [2022-04-08 13:09:05,091 INFO L290 TraceCheckUtils]: 18: Hoare triple {2063#true} ~cond := #in~cond; {2089#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 13:09:05,091 INFO L290 TraceCheckUtils]: 19: Hoare triple {2089#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2093#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 13:09:05,091 INFO L290 TraceCheckUtils]: 20: Hoare triple {2093#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2093#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 13:09:05,092 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2093#(not (= |assume_abort_if_not_#in~cond| 0))} {2119#(and (<= (mod main_~B~0 4294967296) 2) (<= (mod main_~A~0 4294967296) 2))} #85#return; {2135#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~A~0 4294967296) 2))} is VALID [2022-04-08 13:09:05,092 INFO L290 TraceCheckUtils]: 22: Hoare triple {2135#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~A~0 4294967296) 2))} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {2139#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~r~0 4294967296) 2) (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-08 13:09:05,093 INFO L290 TraceCheckUtils]: 23: Hoare triple {2139#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~r~0 4294967296) 2) (= main_~B~0 main_~d~0) (= main_~p~0 1))} assume !false; {2139#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~r~0 4294967296) 2) (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-08 13:09:05,093 INFO L272 TraceCheckUtils]: 24: Hoare triple {2139#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~r~0 4294967296) 2) (= main_~B~0 main_~d~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {2063#true} is VALID [2022-04-08 13:09:05,093 INFO L290 TraceCheckUtils]: 25: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-08 13:09:05,093 INFO L290 TraceCheckUtils]: 26: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-08 13:09:05,093 INFO L290 TraceCheckUtils]: 27: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-08 13:09:05,094 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2063#true} {2139#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~r~0 4294967296) 2) (= main_~B~0 main_~d~0) (= main_~p~0 1))} #87#return; {2139#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~r~0 4294967296) 2) (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-08 13:09:05,094 INFO L272 TraceCheckUtils]: 29: Hoare triple {2139#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~r~0 4294967296) 2) (= main_~B~0 main_~d~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {2063#true} is VALID [2022-04-08 13:09:05,094 INFO L290 TraceCheckUtils]: 30: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-08 13:09:05,094 INFO L290 TraceCheckUtils]: 31: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-08 13:09:05,094 INFO L290 TraceCheckUtils]: 32: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-08 13:09:05,100 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2063#true} {2139#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~r~0 4294967296) 2) (= main_~B~0 main_~d~0) (= main_~p~0 1))} #89#return; {2139#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~r~0 4294967296) 2) (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-08 13:09:05,100 INFO L272 TraceCheckUtils]: 34: Hoare triple {2139#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~r~0 4294967296) 2) (= main_~B~0 main_~d~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {2063#true} is VALID [2022-04-08 13:09:05,100 INFO L290 TraceCheckUtils]: 35: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-08 13:09:05,100 INFO L290 TraceCheckUtils]: 36: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-08 13:09:05,100 INFO L290 TraceCheckUtils]: 37: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-08 13:09:05,101 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2063#true} {2139#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~r~0 4294967296) 2) (= main_~B~0 main_~d~0) (= main_~p~0 1))} #91#return; {2139#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~r~0 4294967296) 2) (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-08 13:09:05,102 INFO L290 TraceCheckUtils]: 39: Hoare triple {2139#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~r~0 4294967296) 2) (= main_~B~0 main_~d~0) (= main_~p~0 1))} assume !!(~r~0 % 4294967296 >= ~d~0 % 4294967296);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {2191#(and (= (* main_~B~0 2) main_~d~0) (< (div (+ 2 (* (- 1) (mod main_~B~0 4294967296))) (- 4294967296)) 1) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 13:09:05,102 INFO L290 TraceCheckUtils]: 40: Hoare triple {2191#(and (= (* main_~B~0 2) main_~d~0) (< (div (+ 2 (* (- 1) (mod main_~B~0 4294967296))) (- 4294967296)) 1) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} assume !false; {2191#(and (= (* main_~B~0 2) main_~d~0) (< (div (+ 2 (* (- 1) (mod main_~B~0 4294967296))) (- 4294967296)) 1) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 13:09:05,102 INFO L272 TraceCheckUtils]: 41: Hoare triple {2191#(and (= (* main_~B~0 2) main_~d~0) (< (div (+ 2 (* (- 1) (mod main_~B~0 4294967296))) (- 4294967296)) 1) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {2063#true} is VALID [2022-04-08 13:09:05,102 INFO L290 TraceCheckUtils]: 42: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-08 13:09:05,102 INFO L290 TraceCheckUtils]: 43: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-08 13:09:05,102 INFO L290 TraceCheckUtils]: 44: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-08 13:09:05,103 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2063#true} {2191#(and (= (* main_~B~0 2) main_~d~0) (< (div (+ 2 (* (- 1) (mod main_~B~0 4294967296))) (- 4294967296)) 1) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #87#return; {2191#(and (= (* main_~B~0 2) main_~d~0) (< (div (+ 2 (* (- 1) (mod main_~B~0 4294967296))) (- 4294967296)) 1) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 13:09:05,103 INFO L272 TraceCheckUtils]: 46: Hoare triple {2191#(and (= (* main_~B~0 2) main_~d~0) (< (div (+ 2 (* (- 1) (mod main_~B~0 4294967296))) (- 4294967296)) 1) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {2063#true} is VALID [2022-04-08 13:09:05,103 INFO L290 TraceCheckUtils]: 47: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-08 13:09:05,103 INFO L290 TraceCheckUtils]: 48: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-08 13:09:05,103 INFO L290 TraceCheckUtils]: 49: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-08 13:09:05,104 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2063#true} {2191#(and (= (* main_~B~0 2) main_~d~0) (< (div (+ 2 (* (- 1) (mod main_~B~0 4294967296))) (- 4294967296)) 1) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #89#return; {2191#(and (= (* main_~B~0 2) main_~d~0) (< (div (+ 2 (* (- 1) (mod main_~B~0 4294967296))) (- 4294967296)) 1) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 13:09:05,111 INFO L272 TraceCheckUtils]: 51: Hoare triple {2191#(and (= (* main_~B~0 2) main_~d~0) (< (div (+ 2 (* (- 1) (mod main_~B~0 4294967296))) (- 4294967296)) 1) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {2228#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 13:09:05,112 INFO L290 TraceCheckUtils]: 52: Hoare triple {2228#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2232#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 13:09:05,112 INFO L290 TraceCheckUtils]: 53: Hoare triple {2232#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2064#false} is VALID [2022-04-08 13:09:05,112 INFO L290 TraceCheckUtils]: 54: Hoare triple {2064#false} assume !false; {2064#false} is VALID [2022-04-08 13:09:05,114 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 10 proven. 4 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-08 13:09:05,114 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 13:09:06,367 INFO L290 TraceCheckUtils]: 54: Hoare triple {2064#false} assume !false; {2064#false} is VALID [2022-04-08 13:09:06,376 INFO L290 TraceCheckUtils]: 53: Hoare triple {2232#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2064#false} is VALID [2022-04-08 13:09:06,377 INFO L290 TraceCheckUtils]: 52: Hoare triple {2228#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2232#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 13:09:06,378 INFO L272 TraceCheckUtils]: 51: Hoare triple {2248#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {2228#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 13:09:06,378 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2063#true} {2248#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} #89#return; {2248#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} is VALID [2022-04-08 13:09:06,378 INFO L290 TraceCheckUtils]: 49: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-08 13:09:06,378 INFO L290 TraceCheckUtils]: 48: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-08 13:09:06,378 INFO L290 TraceCheckUtils]: 47: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-08 13:09:06,379 INFO L272 TraceCheckUtils]: 46: Hoare triple {2248#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {2063#true} is VALID [2022-04-08 13:09:06,379 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2063#true} {2248#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} #87#return; {2248#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} is VALID [2022-04-08 13:09:06,379 INFO L290 TraceCheckUtils]: 44: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-08 13:09:06,379 INFO L290 TraceCheckUtils]: 43: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-08 13:09:06,379 INFO L290 TraceCheckUtils]: 42: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-08 13:09:06,379 INFO L272 TraceCheckUtils]: 41: Hoare triple {2248#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {2063#true} is VALID [2022-04-08 13:09:06,380 INFO L290 TraceCheckUtils]: 40: Hoare triple {2248#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} assume !false; {2248#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} is VALID [2022-04-08 13:09:08,383 WARN L290 TraceCheckUtils]: 39: Hoare triple {2285#(or (= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296)) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))))} assume !!(~r~0 % 4294967296 >= ~d~0 % 4294967296);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {2248#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} is UNKNOWN [2022-04-08 13:09:08,384 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2063#true} {2285#(or (= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296)) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))))} #91#return; {2285#(or (= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296)) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))))} is VALID [2022-04-08 13:09:08,384 INFO L290 TraceCheckUtils]: 37: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-08 13:09:08,384 INFO L290 TraceCheckUtils]: 36: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-08 13:09:08,385 INFO L290 TraceCheckUtils]: 35: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-08 13:09:08,385 INFO L272 TraceCheckUtils]: 34: Hoare triple {2285#(or (= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296)) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {2063#true} is VALID [2022-04-08 13:09:08,385 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2063#true} {2285#(or (= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296)) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))))} #89#return; {2285#(or (= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296)) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))))} is VALID [2022-04-08 13:09:08,385 INFO L290 TraceCheckUtils]: 32: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-08 13:09:08,385 INFO L290 TraceCheckUtils]: 31: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-08 13:09:08,385 INFO L290 TraceCheckUtils]: 30: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-08 13:09:08,386 INFO L272 TraceCheckUtils]: 29: Hoare triple {2285#(or (= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296)) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {2063#true} is VALID [2022-04-08 13:09:08,386 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2063#true} {2285#(or (= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296)) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))))} #87#return; {2285#(or (= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296)) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))))} is VALID [2022-04-08 13:09:08,386 INFO L290 TraceCheckUtils]: 27: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-08 13:09:08,386 INFO L290 TraceCheckUtils]: 26: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-08 13:09:08,386 INFO L290 TraceCheckUtils]: 25: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-08 13:09:08,386 INFO L272 TraceCheckUtils]: 24: Hoare triple {2285#(or (= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296)) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {2063#true} is VALID [2022-04-08 13:09:08,387 INFO L290 TraceCheckUtils]: 23: Hoare triple {2285#(or (= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296)) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))))} assume !false; {2285#(or (= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296)) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))))} is VALID [2022-04-08 13:09:08,387 INFO L290 TraceCheckUtils]: 22: Hoare triple {2063#true} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {2285#(or (= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296)) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))))} is VALID [2022-04-08 13:09:08,387 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2063#true} {2063#true} #85#return; {2063#true} is VALID [2022-04-08 13:09:08,387 INFO L290 TraceCheckUtils]: 20: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-08 13:09:08,387 INFO L290 TraceCheckUtils]: 19: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-08 13:09:08,388 INFO L290 TraceCheckUtils]: 18: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-08 13:09:08,388 INFO L272 TraceCheckUtils]: 17: Hoare triple {2063#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2063#true} is VALID [2022-04-08 13:09:08,388 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2063#true} {2063#true} #83#return; {2063#true} is VALID [2022-04-08 13:09:08,388 INFO L290 TraceCheckUtils]: 15: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-08 13:09:08,388 INFO L290 TraceCheckUtils]: 14: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-08 13:09:08,388 INFO L290 TraceCheckUtils]: 13: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-08 13:09:08,388 INFO L272 TraceCheckUtils]: 12: Hoare triple {2063#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {2063#true} is VALID [2022-04-08 13:09:08,388 INFO L290 TraceCheckUtils]: 11: Hoare triple {2063#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2063#true} is VALID [2022-04-08 13:09:08,388 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2063#true} {2063#true} #81#return; {2063#true} is VALID [2022-04-08 13:09:08,388 INFO L290 TraceCheckUtils]: 9: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-08 13:09:08,388 INFO L290 TraceCheckUtils]: 8: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-08 13:09:08,388 INFO L290 TraceCheckUtils]: 7: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-08 13:09:08,389 INFO L272 TraceCheckUtils]: 6: Hoare triple {2063#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {2063#true} is VALID [2022-04-08 13:09:08,389 INFO L290 TraceCheckUtils]: 5: Hoare triple {2063#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; {2063#true} is VALID [2022-04-08 13:09:08,389 INFO L272 TraceCheckUtils]: 4: Hoare triple {2063#true} call #t~ret6 := main(); {2063#true} is VALID [2022-04-08 13:09:08,389 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2063#true} {2063#true} #101#return; {2063#true} is VALID [2022-04-08 13:09:08,389 INFO L290 TraceCheckUtils]: 2: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-08 13:09:08,389 INFO L290 TraceCheckUtils]: 1: Hoare triple {2063#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(9, 2);call #Ultimate.allocInit(12, 3); {2063#true} is VALID [2022-04-08 13:09:08,389 INFO L272 TraceCheckUtils]: 0: Hoare triple {2063#true} call ULTIMATE.init(); {2063#true} is VALID [2022-04-08 13:09:08,389 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-08 13:09:08,390 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 13:09:08,390 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [953759632] [2022-04-08 13:09:08,390 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 13:09:08,390 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [586402775] [2022-04-08 13:09:08,390 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [586402775] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 13:09:08,390 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 13:09:08,390 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [11] total 13 [2022-04-08 13:09:08,390 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 13:09:08,390 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2103666882] [2022-04-08 13:09:08,390 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2103666882] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 13:09:08,390 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 13:09:08,390 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 13:09:08,391 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [644087505] [2022-04-08 13:09:08,391 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 13:09:08,391 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 55 [2022-04-08 13:09:08,391 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 13:09:08,391 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 13:09:10,439 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 36 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 13:09:10,439 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 13:09:10,439 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 13:09:10,439 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 13:09:10,439 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-08 13:09:10,440 INFO L87 Difference]: Start difference. First operand 64 states and 81 transitions. Second operand has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 13:09:18,264 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 13:09:20,732 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 13:09:22,885 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 13:09:28,575 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 13:09:29,757 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:09:29,758 INFO L93 Difference]: Finished difference Result 82 states and 106 transitions. [2022-04-08 13:09:29,758 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 13:09:29,758 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 55 [2022-04-08 13:09:29,758 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 13:09:29,758 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 13:09:29,759 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 68 transitions. [2022-04-08 13:09:29,760 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 13:09:29,761 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 68 transitions. [2022-04-08 13:09:29,761 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 68 transitions. [2022-04-08 13:09:31,834 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 67 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 13:09:31,836 INFO L225 Difference]: With dead ends: 82 [2022-04-08 13:09:31,836 INFO L226 Difference]: Without dead ends: 80 [2022-04-08 13:09:31,837 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 110 GetRequests, 97 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-08 13:09:31,837 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 10 mSDsluCounter, 118 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 3 mSolverCounterUnsat, 4 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 9.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 163 SdHoareTripleChecker+Invalid, 80 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 4 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 10.1s IncrementalHoareTripleChecker+Time [2022-04-08 13:09:31,837 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 163 Invalid, 80 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 73 Invalid, 4 Unknown, 0 Unchecked, 10.1s Time] [2022-04-08 13:09:31,838 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 80 states. [2022-04-08 13:09:31,861 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 80 to 71. [2022-04-08 13:09:31,861 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 13:09:31,861 INFO L82 GeneralOperation]: Start isEquivalent. First operand 80 states. Second operand has 71 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 13:09:31,861 INFO L74 IsIncluded]: Start isIncluded. First operand 80 states. Second operand has 71 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 13:09:31,862 INFO L87 Difference]: Start difference. First operand 80 states. Second operand has 71 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 13:09:31,864 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:09:31,864 INFO L93 Difference]: Finished difference Result 80 states and 104 transitions. [2022-04-08 13:09:31,864 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 104 transitions. [2022-04-08 13:09:31,864 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 13:09:31,864 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 13:09:31,865 INFO L74 IsIncluded]: Start isIncluded. First operand has 71 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) Second operand 80 states. [2022-04-08 13:09:31,865 INFO L87 Difference]: Start difference. First operand has 71 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) Second operand 80 states. [2022-04-08 13:09:31,867 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:09:31,867 INFO L93 Difference]: Finished difference Result 80 states and 104 transitions. [2022-04-08 13:09:31,867 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 104 transitions. [2022-04-08 13:09:31,868 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 13:09:31,868 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 13:09:31,868 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 13:09:31,868 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 13:09:31,868 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 13:09:31,870 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 89 transitions. [2022-04-08 13:09:31,870 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 89 transitions. Word has length 55 [2022-04-08 13:09:31,870 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 13:09:31,870 INFO L478 AbstractCegarLoop]: Abstraction has 71 states and 89 transitions. [2022-04-08 13:09:31,870 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 5 states have internal predecessors, (17), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 13:09:31,870 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 71 states and 89 transitions. [2022-04-08 13:09:34,353 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 88 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 13:09:34,354 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 89 transitions. [2022-04-08 13:09:34,354 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-08 13:09:34,354 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 13:09:34,354 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 13:09:34,361 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-08 13:09:34,555 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 13:09:34,555 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 13:09:34,555 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 13:09:34,556 INFO L85 PathProgramCache]: Analyzing trace with hash -682689219, now seen corresponding path program 1 times [2022-04-08 13:09:34,556 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 13:09:34,556 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [259744319] [2022-04-08 13:09:34,556 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 13:09:34,556 INFO L85 PathProgramCache]: Analyzing trace with hash -682689219, now seen corresponding path program 2 times [2022-04-08 13:09:34,556 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 13:09:34,556 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1051933561] [2022-04-08 13:09:34,556 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 13:09:34,556 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 13:09:34,566 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 13:09:34,566 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [841104841] [2022-04-08 13:09:34,566 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 13:09:34,566 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 13:09:34,566 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 13:09:34,573 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 13:09:34,577 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-08 13:09:34,628 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 13:09:34,628 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 13:09:34,629 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 13:09:34,645 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 13:09:34,647 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 13:09:36,602 INFO L272 TraceCheckUtils]: 0: Hoare triple {2873#true} call ULTIMATE.init(); {2873#true} is VALID [2022-04-08 13:09:36,602 INFO L290 TraceCheckUtils]: 1: Hoare triple {2873#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(9, 2);call #Ultimate.allocInit(12, 3); {2873#true} is VALID [2022-04-08 13:09:36,602 INFO L290 TraceCheckUtils]: 2: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:36,602 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2873#true} {2873#true} #101#return; {2873#true} is VALID [2022-04-08 13:09:36,602 INFO L272 TraceCheckUtils]: 4: Hoare triple {2873#true} call #t~ret6 := main(); {2873#true} is VALID [2022-04-08 13:09:36,602 INFO L290 TraceCheckUtils]: 5: Hoare triple {2873#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; {2873#true} is VALID [2022-04-08 13:09:36,602 INFO L272 TraceCheckUtils]: 6: Hoare triple {2873#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {2873#true} is VALID [2022-04-08 13:09:36,603 INFO L290 TraceCheckUtils]: 7: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-08 13:09:36,603 INFO L290 TraceCheckUtils]: 8: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-08 13:09:36,603 INFO L290 TraceCheckUtils]: 9: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:36,603 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2873#true} {2873#true} #81#return; {2873#true} is VALID [2022-04-08 13:09:36,603 INFO L290 TraceCheckUtils]: 11: Hoare triple {2873#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2873#true} is VALID [2022-04-08 13:09:36,603 INFO L272 TraceCheckUtils]: 12: Hoare triple {2873#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {2873#true} is VALID [2022-04-08 13:09:36,603 INFO L290 TraceCheckUtils]: 13: Hoare triple {2873#true} ~cond := #in~cond; {2917#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 13:09:36,604 INFO L290 TraceCheckUtils]: 14: Hoare triple {2917#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2921#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 13:09:36,604 INFO L290 TraceCheckUtils]: 15: Hoare triple {2921#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2921#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 13:09:36,605 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2921#(not (= |assume_abort_if_not_#in~cond| 0))} {2873#true} #83#return; {2928#(<= (mod main_~B~0 4294967296) 2)} is VALID [2022-04-08 13:09:36,605 INFO L272 TraceCheckUtils]: 17: Hoare triple {2928#(<= (mod main_~B~0 4294967296) 2)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2873#true} is VALID [2022-04-08 13:09:36,605 INFO L290 TraceCheckUtils]: 18: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-08 13:09:36,605 INFO L290 TraceCheckUtils]: 19: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-08 13:09:36,605 INFO L290 TraceCheckUtils]: 20: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:36,605 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2873#true} {2928#(<= (mod main_~B~0 4294967296) 2)} #85#return; {2928#(<= (mod main_~B~0 4294967296) 2)} is VALID [2022-04-08 13:09:36,606 INFO L290 TraceCheckUtils]: 22: Hoare triple {2928#(<= (mod main_~B~0 4294967296) 2)} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {2947#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-08 13:09:36,606 INFO L290 TraceCheckUtils]: 23: Hoare triple {2947#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} assume !false; {2947#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-08 13:09:36,606 INFO L272 TraceCheckUtils]: 24: Hoare triple {2947#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {2873#true} is VALID [2022-04-08 13:09:36,607 INFO L290 TraceCheckUtils]: 25: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-08 13:09:36,607 INFO L290 TraceCheckUtils]: 26: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-08 13:09:36,607 INFO L290 TraceCheckUtils]: 27: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:36,607 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2873#true} {2947#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} #87#return; {2947#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-08 13:09:36,607 INFO L272 TraceCheckUtils]: 29: Hoare triple {2947#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {2873#true} is VALID [2022-04-08 13:09:36,608 INFO L290 TraceCheckUtils]: 30: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-08 13:09:36,608 INFO L290 TraceCheckUtils]: 31: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-08 13:09:36,608 INFO L290 TraceCheckUtils]: 32: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:36,608 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2873#true} {2947#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} #89#return; {2947#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-08 13:09:36,608 INFO L272 TraceCheckUtils]: 34: Hoare triple {2947#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {2873#true} is VALID [2022-04-08 13:09:36,608 INFO L290 TraceCheckUtils]: 35: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-08 13:09:36,609 INFO L290 TraceCheckUtils]: 36: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-08 13:09:36,609 INFO L290 TraceCheckUtils]: 37: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:36,609 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2873#true} {2947#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} #91#return; {2947#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-08 13:09:36,610 INFO L290 TraceCheckUtils]: 39: Hoare triple {2947#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} assume !(~r~0 % 4294967296 >= ~d~0 % 4294967296); {2999#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-08 13:09:36,610 INFO L290 TraceCheckUtils]: 40: Hoare triple {2999#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} assume !false; {2999#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-08 13:09:36,610 INFO L272 TraceCheckUtils]: 41: Hoare triple {2999#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} call __VERIFIER_assert((if ~A~0 % 4294967296 == (~q~0 * ~B~0 + ~r~0) % 4294967296 then 1 else 0)); {2873#true} is VALID [2022-04-08 13:09:36,610 INFO L290 TraceCheckUtils]: 42: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-08 13:09:36,610 INFO L290 TraceCheckUtils]: 43: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-08 13:09:36,610 INFO L290 TraceCheckUtils]: 44: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:36,611 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2873#true} {2999#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} #93#return; {2999#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-08 13:09:36,611 INFO L272 TraceCheckUtils]: 46: Hoare triple {2999#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {2873#true} is VALID [2022-04-08 13:09:36,611 INFO L290 TraceCheckUtils]: 47: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-08 13:09:36,611 INFO L290 TraceCheckUtils]: 48: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-08 13:09:36,611 INFO L290 TraceCheckUtils]: 49: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:36,612 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2873#true} {2999#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} #95#return; {2999#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-08 13:09:36,613 INFO L290 TraceCheckUtils]: 51: Hoare triple {2999#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} assume !(1 != ~p~0 % 4294967296); {2999#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-08 13:09:36,613 INFO L272 TraceCheckUtils]: 52: Hoare triple {2999#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} call __VERIFIER_assert((if ~A~0 % 4294967296 == (~d~0 * ~q~0 + ~r~0) % 4294967296 then 1 else 0)); {3039#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 13:09:36,614 INFO L290 TraceCheckUtils]: 53: Hoare triple {3039#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3043#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 13:09:36,614 INFO L290 TraceCheckUtils]: 54: Hoare triple {3043#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2874#false} is VALID [2022-04-08 13:09:36,614 INFO L290 TraceCheckUtils]: 55: Hoare triple {2874#false} assume !false; {2874#false} is VALID [2022-04-08 13:09:36,614 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 13 proven. 3 refuted. 0 times theorem prover too weak. 46 trivial. 0 not checked. [2022-04-08 13:09:36,614 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 13:09:37,859 INFO L290 TraceCheckUtils]: 55: Hoare triple {2874#false} assume !false; {2874#false} is VALID [2022-04-08 13:09:37,859 INFO L290 TraceCheckUtils]: 54: Hoare triple {3043#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2874#false} is VALID [2022-04-08 13:09:37,859 INFO L290 TraceCheckUtils]: 53: Hoare triple {3039#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3043#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 13:09:37,860 INFO L272 TraceCheckUtils]: 52: Hoare triple {3059#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} call __VERIFIER_assert((if ~A~0 % 4294967296 == (~d~0 * ~q~0 + ~r~0) % 4294967296 then 1 else 0)); {3039#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 13:09:37,860 INFO L290 TraceCheckUtils]: 51: Hoare triple {3059#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} assume !(1 != ~p~0 % 4294967296); {3059#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} is VALID [2022-04-08 13:09:37,861 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2873#true} {3059#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} #95#return; {3059#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} is VALID [2022-04-08 13:09:37,861 INFO L290 TraceCheckUtils]: 49: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:37,861 INFO L290 TraceCheckUtils]: 48: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-08 13:09:37,861 INFO L290 TraceCheckUtils]: 47: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-08 13:09:37,861 INFO L272 TraceCheckUtils]: 46: Hoare triple {3059#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {2873#true} is VALID [2022-04-08 13:09:37,862 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2873#true} {3059#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} #93#return; {3059#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} is VALID [2022-04-08 13:09:37,862 INFO L290 TraceCheckUtils]: 44: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:37,862 INFO L290 TraceCheckUtils]: 43: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-08 13:09:37,862 INFO L290 TraceCheckUtils]: 42: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-08 13:09:37,862 INFO L272 TraceCheckUtils]: 41: Hoare triple {3059#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} call __VERIFIER_assert((if ~A~0 % 4294967296 == (~q~0 * ~B~0 + ~r~0) % 4294967296 then 1 else 0)); {2873#true} is VALID [2022-04-08 13:09:37,863 INFO L290 TraceCheckUtils]: 40: Hoare triple {3059#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} assume !false; {3059#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} is VALID [2022-04-08 13:09:37,863 INFO L290 TraceCheckUtils]: 39: Hoare triple {3099#(or (= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} assume !(~r~0 % 4294967296 >= ~d~0 % 4294967296); {3059#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} is VALID [2022-04-08 13:09:37,864 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2873#true} {3099#(or (= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} #91#return; {3099#(or (= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-08 13:09:37,864 INFO L290 TraceCheckUtils]: 37: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:37,864 INFO L290 TraceCheckUtils]: 36: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-08 13:09:37,864 INFO L290 TraceCheckUtils]: 35: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-08 13:09:37,864 INFO L272 TraceCheckUtils]: 34: Hoare triple {3099#(or (= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {2873#true} is VALID [2022-04-08 13:09:37,864 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2873#true} {3099#(or (= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} #89#return; {3099#(or (= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-08 13:09:37,865 INFO L290 TraceCheckUtils]: 32: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:37,865 INFO L290 TraceCheckUtils]: 31: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-08 13:09:37,865 INFO L290 TraceCheckUtils]: 30: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-08 13:09:37,865 INFO L272 TraceCheckUtils]: 29: Hoare triple {3099#(or (= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {2873#true} is VALID [2022-04-08 13:09:37,865 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2873#true} {3099#(or (= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} #87#return; {3099#(or (= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-08 13:09:37,865 INFO L290 TraceCheckUtils]: 27: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:37,865 INFO L290 TraceCheckUtils]: 26: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-08 13:09:37,865 INFO L290 TraceCheckUtils]: 25: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-08 13:09:37,866 INFO L272 TraceCheckUtils]: 24: Hoare triple {3099#(or (= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {2873#true} is VALID [2022-04-08 13:09:37,866 INFO L290 TraceCheckUtils]: 23: Hoare triple {3099#(or (= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} assume !false; {3099#(or (= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-08 13:09:37,866 INFO L290 TraceCheckUtils]: 22: Hoare triple {2873#true} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {3099#(or (= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296)) (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-08 13:09:37,866 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2873#true} {2873#true} #85#return; {2873#true} is VALID [2022-04-08 13:09:37,867 INFO L290 TraceCheckUtils]: 20: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:37,867 INFO L290 TraceCheckUtils]: 19: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-08 13:09:37,867 INFO L290 TraceCheckUtils]: 18: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-08 13:09:37,867 INFO L272 TraceCheckUtils]: 17: Hoare triple {2873#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2873#true} is VALID [2022-04-08 13:09:37,867 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2873#true} {2873#true} #83#return; {2873#true} is VALID [2022-04-08 13:09:37,867 INFO L290 TraceCheckUtils]: 15: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:37,867 INFO L290 TraceCheckUtils]: 14: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-08 13:09:37,867 INFO L290 TraceCheckUtils]: 13: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-08 13:09:37,867 INFO L272 TraceCheckUtils]: 12: Hoare triple {2873#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {2873#true} is VALID [2022-04-08 13:09:37,867 INFO L290 TraceCheckUtils]: 11: Hoare triple {2873#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2873#true} is VALID [2022-04-08 13:09:37,867 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2873#true} {2873#true} #81#return; {2873#true} is VALID [2022-04-08 13:09:37,867 INFO L290 TraceCheckUtils]: 9: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:37,867 INFO L290 TraceCheckUtils]: 8: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-08 13:09:37,868 INFO L290 TraceCheckUtils]: 7: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-08 13:09:37,868 INFO L272 TraceCheckUtils]: 6: Hoare triple {2873#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {2873#true} is VALID [2022-04-08 13:09:37,868 INFO L290 TraceCheckUtils]: 5: Hoare triple {2873#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; {2873#true} is VALID [2022-04-08 13:09:37,868 INFO L272 TraceCheckUtils]: 4: Hoare triple {2873#true} call #t~ret6 := main(); {2873#true} is VALID [2022-04-08 13:09:37,868 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2873#true} {2873#true} #101#return; {2873#true} is VALID [2022-04-08 13:09:37,868 INFO L290 TraceCheckUtils]: 2: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-08 13:09:37,868 INFO L290 TraceCheckUtils]: 1: Hoare triple {2873#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(9, 2);call #Ultimate.allocInit(12, 3); {2873#true} is VALID [2022-04-08 13:09:37,868 INFO L272 TraceCheckUtils]: 0: Hoare triple {2873#true} call ULTIMATE.init(); {2873#true} is VALID [2022-04-08 13:09:37,868 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-08 13:09:37,869 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 13:09:37,869 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1051933561] [2022-04-08 13:09:37,869 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 13:09:37,869 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [841104841] [2022-04-08 13:09:37,869 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [841104841] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 13:09:37,869 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 13:09:37,869 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-08 13:09:37,869 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 13:09:37,869 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [259744319] [2022-04-08 13:09:37,869 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [259744319] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 13:09:37,869 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 13:09:37,869 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 13:09:37,869 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [577674796] [2022-04-08 13:09:37,870 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 13:09:37,870 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 56 [2022-04-08 13:09:37,870 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 13:09:37,870 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 13:09:37,904 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:09:37,904 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 13:09:37,904 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 13:09:37,904 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 13:09:37,904 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-08 13:09:37,905 INFO L87 Difference]: Start difference. First operand 71 states and 89 transitions. Second operand has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 13:09:42,330 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 13:09:44,474 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.14s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 13:09:45,249 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:09:45,249 INFO L93 Difference]: Finished difference Result 77 states and 94 transitions. [2022-04-08 13:09:45,249 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 13:09:45,250 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 56 [2022-04-08 13:09:45,250 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 13:09:45,250 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 13:09:45,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 13:09:45,251 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 13:09:45,252 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 13:09:45,252 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-08 13:09:45,308 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 13:09:45,310 INFO L225 Difference]: With dead ends: 77 [2022-04-08 13:09:45,310 INFO L226 Difference]: Without dead ends: 70 [2022-04-08 13:09:45,310 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 112 GetRequests, 101 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=29, Invalid=103, Unknown=0, NotChecked=0, Total=132 [2022-04-08 13:09:45,310 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 9 mSDsluCounter, 102 mSDsCounter, 0 mSdLazyCounter, 42 mSolverCounterSat, 3 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 5.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 148 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 42 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 5.2s IncrementalHoareTripleChecker+Time [2022-04-08 13:09:45,311 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 148 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 42 Invalid, 2 Unknown, 0 Unchecked, 5.2s Time] [2022-04-08 13:09:45,311 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-08 13:09:45,331 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2022-04-08 13:09:45,331 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 13:09:45,331 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand has 70 states, 40 states have (on average 1.175) internal successors, (47), 42 states have internal predecessors, (47), 21 states have call successors, (21), 9 states have call predecessors, (21), 8 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 13:09:45,332 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand has 70 states, 40 states have (on average 1.175) internal successors, (47), 42 states have internal predecessors, (47), 21 states have call successors, (21), 9 states have call predecessors, (21), 8 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 13:09:45,332 INFO L87 Difference]: Start difference. First operand 70 states. Second operand has 70 states, 40 states have (on average 1.175) internal successors, (47), 42 states have internal predecessors, (47), 21 states have call successors, (21), 9 states have call predecessors, (21), 8 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 13:09:45,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:09:45,334 INFO L93 Difference]: Finished difference Result 70 states and 87 transitions. [2022-04-08 13:09:45,334 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 87 transitions. [2022-04-08 13:09:45,334 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 13:09:45,334 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 13:09:45,334 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 40 states have (on average 1.175) internal successors, (47), 42 states have internal predecessors, (47), 21 states have call successors, (21), 9 states have call predecessors, (21), 8 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) Second operand 70 states. [2022-04-08 13:09:45,335 INFO L87 Difference]: Start difference. First operand has 70 states, 40 states have (on average 1.175) internal successors, (47), 42 states have internal predecessors, (47), 21 states have call successors, (21), 9 states have call predecessors, (21), 8 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) Second operand 70 states. [2022-04-08 13:09:45,336 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 13:09:45,336 INFO L93 Difference]: Finished difference Result 70 states and 87 transitions. [2022-04-08 13:09:45,336 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 87 transitions. [2022-04-08 13:09:45,337 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 13:09:45,337 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 13:09:45,337 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 13:09:45,337 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 13:09:45,337 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 40 states have (on average 1.175) internal successors, (47), 42 states have internal predecessors, (47), 21 states have call successors, (21), 9 states have call predecessors, (21), 8 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 13:09:45,339 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 87 transitions. [2022-04-08 13:09:45,339 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 87 transitions. Word has length 56 [2022-04-08 13:09:45,339 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 13:09:45,339 INFO L478 AbstractCegarLoop]: Abstraction has 70 states and 87 transitions. [2022-04-08 13:09:45,339 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 13:09:45,339 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 70 states and 87 transitions. [2022-04-08 13:09:47,666 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 86 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 13:09:47,666 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 87 transitions. [2022-04-08 13:09:47,667 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-08 13:09:47,667 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 13:09:47,667 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 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, 1, 1, 1, 1, 1] [2022-04-08 13:09:47,685 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-08 13:09:47,867 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 13:09:47,867 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 13:09:47,867 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 13:09:47,868 INFO L85 PathProgramCache]: Analyzing trace with hash 1586192473, now seen corresponding path program 1 times [2022-04-08 13:09:47,868 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 13:09:47,868 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1411835073] [2022-04-08 13:09:47,868 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 13:09:47,868 INFO L85 PathProgramCache]: Analyzing trace with hash 1586192473, now seen corresponding path program 2 times [2022-04-08 13:09:47,868 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 13:09:47,868 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [176557621] [2022-04-08 13:09:47,868 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 13:09:47,868 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 13:09:47,880 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 13:09:47,880 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [278472221] [2022-04-08 13:09:47,880 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 13:09:47,880 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 13:09:47,880 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 13:09:47,881 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 13:09:47,882 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process