/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-e106359-m [2022-04-15 15:39:40,699 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 15:39:40,701 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 15:39:40,735 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 15:39:40,736 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 15:39:40,737 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 15:39:40,738 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 15:39:40,739 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 15:39:40,740 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 15:39:40,741 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 15:39:40,742 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 15:39:40,743 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 15:39:40,743 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 15:39:40,744 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 15:39:40,744 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 15:39:40,745 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 15:39:40,746 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 15:39:40,746 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 15:39:40,748 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 15:39:40,749 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 15:39:40,750 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 15:39:40,751 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 15:39:40,752 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 15:39:40,753 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 15:39:40,754 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 15:39:40,756 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 15:39:40,757 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 15:39:40,757 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 15:39:40,758 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 15:39:40,758 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 15:39:40,759 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 15:39:40,759 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 15:39:40,760 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 15:39:40,760 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 15:39:40,761 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 15:39:40,762 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 15:39:40,762 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 15:39:40,762 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 15:39:40,763 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 15:39:40,763 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 15:39:40,764 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 15:39:40,764 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 15:39:40,765 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf [2022-04-15 15:39:40,772 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 15:39:40,772 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 15:39:40,773 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 15:39:40,773 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 15:39:40,774 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 15:39:40,774 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 15:39:40,774 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 15:39:40,774 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 15:39:40,774 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 15:39:40,774 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 15:39:40,775 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 15:39:40,775 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 15:39:40,775 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 15:39:40,775 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-15 15:39:40,775 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 15:39:40,775 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 15:39:40,776 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 15:39:40,776 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-15 15:39:40,776 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-15 15:39:40,776 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-15 15:39:40,776 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 15:39:40,776 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-15 15:39:40,777 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-15 15:39:40,979 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 15:39:41,005 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 15:39:41,007 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 15:39:41,008 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 15:39:41,009 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 15:39:41,010 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-15 15:39:41,059 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5e8acd692/1e342f78a1cb4d328cda43c2088e78f6/FLAG2a435d068 [2022-04-15 15:39:41,393 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 15:39:41,393 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/hard-u_valuebound2.c [2022-04-15 15:39:41,398 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5e8acd692/1e342f78a1cb4d328cda43c2088e78f6/FLAG2a435d068 [2022-04-15 15:39:41,817 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5e8acd692/1e342f78a1cb4d328cda43c2088e78f6 [2022-04-15 15:39:41,820 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 15:39:41,821 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-15 15:39:41,824 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 15:39:41,824 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 15:39:41,826 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 15:39:41,827 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 03:39:41" (1/1) ... [2022-04-15 15:39:41,828 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@275e710 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:39:41, skipping insertion in model container [2022-04-15 15:39:41,828 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 03:39:41" (1/1) ... [2022-04-15 15:39:41,834 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 15:39:41,848 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 15:39:41,978 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-15 15:39:41,994 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 15:39:42,004 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 15:39:42,013 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-15 15:39:42,026 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 15:39:42,036 INFO L208 MainTranslator]: Completed translation [2022-04-15 15:39:42,037 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:39:42 WrapperNode [2022-04-15 15:39:42,037 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 15:39:42,038 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 15:39:42,038 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 15:39:42,038 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 15:39:42,047 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:39:42" (1/1) ... [2022-04-15 15:39:42,048 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:39:42" (1/1) ... [2022-04-15 15:39:42,064 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:39:42" (1/1) ... [2022-04-15 15:39:42,064 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:39:42" (1/1) ... [2022-04-15 15:39:42,069 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:39:42" (1/1) ... [2022-04-15 15:39:42,073 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:39:42" (1/1) ... [2022-04-15 15:39:42,074 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:39:42" (1/1) ... [2022-04-15 15:39:42,075 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 15:39:42,076 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 15:39:42,076 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 15:39:42,076 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 15:39:42,084 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:39:42" (1/1) ... [2022-04-15 15:39:42,090 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 15:39:42,098 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:39:42,112 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-15 15:39:42,137 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-15 15:39:42,159 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 15:39:42,159 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 15:39:42,159 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 15:39:42,160 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 15:39:42,160 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 15:39:42,160 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 15:39:42,161 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 15:39:42,161 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 15:39:42,161 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 15:39:42,161 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 15:39:42,161 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-15 15:39:42,161 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 15:39:42,162 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 15:39:42,162 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 15:39:42,162 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 15:39:42,164 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 15:39:42,164 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 15:39:42,164 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 15:39:42,164 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 15:39:42,165 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 15:39:42,223 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 15:39:42,225 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 15:39:42,412 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 15:39:42,430 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 15:39:42,430 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-15 15:39:42,432 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 03:39:42 BoogieIcfgContainer [2022-04-15 15:39:42,432 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 15:39:42,433 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 15:39:42,433 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 15:39:42,436 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 15:39:42,437 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 03:39:41" (1/3) ... [2022-04-15 15:39:42,437 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3e63e363 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 03:39:42, skipping insertion in model container [2022-04-15 15:39:42,437 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:39:42" (2/3) ... [2022-04-15 15:39:42,438 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3e63e363 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 03:39:42, skipping insertion in model container [2022-04-15 15:39:42,438 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 03:39:42" (3/3) ... [2022-04-15 15:39:42,439 INFO L111 eAbstractionObserver]: Analyzing ICFG hard-u_valuebound2.c [2022-04-15 15:39:42,447 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-15 15:39:42,448 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 15:39:42,489 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 15:39:42,494 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-15 15:39:42,494 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 15:39:42,509 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-15 15:39:42,516 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 15:39:42,516 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:39:42,517 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-15 15:39:42,517 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:39:42,522 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:39:42,522 INFO L85 PathProgramCache]: Analyzing trace with hash -1784424332, now seen corresponding path program 1 times [2022-04-15 15:39:42,528 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:42,528 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [171097429] [2022-04-15 15:39:42,538 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:39:42,538 INFO L85 PathProgramCache]: Analyzing trace with hash -1784424332, now seen corresponding path program 2 times [2022-04-15 15:39:42,541 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:39:42,541 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1388057527] [2022-04-15 15:39:42,541 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:39:42,542 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:39:42,618 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:42,700 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 15:39:42,715 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:42,736 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-15 15:39:42,737 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-15 15:39:42,737 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {41#true} {41#true} #101#return; {41#true} is VALID [2022-04-15 15:39:42,738 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 15:39:42,740 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:42,748 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-15 15:39:42,748 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-15 15:39:42,749 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-15 15:39:42,749 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {41#true} #81#return; {42#false} is VALID [2022-04-15 15:39:42,751 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-15 15:39:42,756 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:42,779 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-15 15:39:42,779 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-15 15:39:42,780 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-15 15:39:42,780 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {42#false} #83#return; {42#false} is VALID [2022-04-15 15:39:42,780 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-15 15:39:42,782 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:42,793 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-15 15:39:42,794 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-15 15:39:42,794 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-15 15:39:42,794 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {42#false} #85#return; {42#false} is VALID [2022-04-15 15:39:42,795 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-15 15:39:42,795 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-15 15:39:42,795 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-15 15:39:42,796 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#true} {41#true} #101#return; {41#true} is VALID [2022-04-15 15:39:42,796 INFO L272 TraceCheckUtils]: 4: Hoare triple {41#true} call #t~ret6 := main(); {41#true} is VALID [2022-04-15 15:39:42,796 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-15 15:39:42,796 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-15 15:39:42,797 INFO L290 TraceCheckUtils]: 7: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-15 15:39:42,797 INFO L290 TraceCheckUtils]: 8: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-15 15:39:42,797 INFO L290 TraceCheckUtils]: 9: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-15 15:39:42,797 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42#false} {41#true} #81#return; {42#false} is VALID [2022-04-15 15:39:42,798 INFO L290 TraceCheckUtils]: 11: Hoare triple {42#false} ~B~0 := #t~nondet5;havoc #t~nondet5; {42#false} is VALID [2022-04-15 15:39:42,798 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-15 15:39:42,798 INFO L290 TraceCheckUtils]: 13: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-15 15:39:42,800 INFO L290 TraceCheckUtils]: 14: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-15 15:39:42,800 INFO L290 TraceCheckUtils]: 15: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-15 15:39:42,800 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {42#false} {42#false} #83#return; {42#false} is VALID [2022-04-15 15:39:42,801 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-15 15:39:42,801 INFO L290 TraceCheckUtils]: 18: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-15 15:39:42,801 INFO L290 TraceCheckUtils]: 19: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-15 15:39:42,802 INFO L290 TraceCheckUtils]: 20: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-15 15:39:42,802 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {42#false} {42#false} #85#return; {42#false} is VALID [2022-04-15 15:39:42,802 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-15 15:39:42,802 INFO L290 TraceCheckUtils]: 23: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-15 15:39:42,802 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-15 15:39:42,803 INFO L290 TraceCheckUtils]: 25: Hoare triple {42#false} ~cond := #in~cond; {42#false} is VALID [2022-04-15 15:39:42,803 INFO L290 TraceCheckUtils]: 26: Hoare triple {42#false} assume 0 == ~cond; {42#false} is VALID [2022-04-15 15:39:42,803 INFO L290 TraceCheckUtils]: 27: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-15 15:39:42,803 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-15 15:39:42,804 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:39:42,804 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1388057527] [2022-04-15 15:39:42,805 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1388057527] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:42,805 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:42,805 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 15:39:42,807 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:39:42,807 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [171097429] [2022-04-15 15:39:42,807 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [171097429] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:42,808 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:42,808 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 15:39:42,808 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1760832713] [2022-04-15 15:39:42,808 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:39:42,813 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-15 15:39:42,819 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:39:42,822 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-15 15:39:42,868 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-15 15:39:42,868 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 15:39:42,868 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:42,894 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 15:39:42,895 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 15:39:42,898 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-15 15:39:43,130 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:43,131 INFO L93 Difference]: Finished difference Result 69 states and 110 transitions. [2022-04-15 15:39:43,131 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 15:39:43,131 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-15 15:39:43,131 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:39:43,133 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-15 15:39:43,150 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-15 15:39:43,151 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-15 15:39:43,156 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-15 15:39:43,156 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 110 transitions. [2022-04-15 15:39:43,301 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-15 15:39:43,319 INFO L225 Difference]: With dead ends: 69 [2022-04-15 15:39:43,319 INFO L226 Difference]: Without dead ends: 33 [2022-04-15 15:39:43,323 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-15 15:39:43,329 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 21 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 12 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s 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.1s IncrementalHoareTripleChecker+Time [2022-04-15 15:39:43,330 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.1s Time] [2022-04-15 15:39:43,344 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states. [2022-04-15 15:39:43,367 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 33. [2022-04-15 15:39:43,367 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:39:43,368 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-15 15:39:43,369 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-15 15:39:43,370 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-15 15:39:43,385 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:43,386 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-15 15:39:43,386 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-15 15:39:43,386 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:43,387 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:43,387 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-15 15:39:43,387 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-15 15:39:43,392 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:43,392 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-15 15:39:43,392 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-15 15:39:43,394 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:43,394 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:43,394 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:39:43,394 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:39:43,395 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-15 15:39:43,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 43 transitions. [2022-04-15 15:39:43,402 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 43 transitions. Word has length 28 [2022-04-15 15:39:43,402 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:39:43,402 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 43 transitions. [2022-04-15 15:39:43,403 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-15 15:39:43,403 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 33 states and 43 transitions. [2022-04-15 15:39:43,452 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-15 15:39:43,453 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-15 15:39:43,455 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 15:39:43,455 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:39:43,455 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-15 15:39:43,455 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 15:39:43,455 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:39:43,459 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:39:43,459 INFO L85 PathProgramCache]: Analyzing trace with hash 1361835634, now seen corresponding path program 1 times [2022-04-15 15:39:43,459 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:43,459 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1643905219] [2022-04-15 15:39:43,460 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:39:43,460 INFO L85 PathProgramCache]: Analyzing trace with hash 1361835634, now seen corresponding path program 2 times [2022-04-15 15:39:43,460 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:39:43,460 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [836626677] [2022-04-15 15:39:43,460 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:39:43,461 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:39:43,502 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:43,588 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 15:39:43,594 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:43,601 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-15 15:39:43,602 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-15 15:39:43,602 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {331#true} {331#true} #101#return; {331#true} is VALID [2022-04-15 15:39:43,602 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 15:39:43,603 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:43,607 INFO L290 TraceCheckUtils]: 0: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-15 15:39:43,608 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-15 15:39:43,608 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-15 15:39:43,608 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} #81#return; {331#true} is VALID [2022-04-15 15:39:43,608 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-15 15:39:43,609 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:43,613 INFO L290 TraceCheckUtils]: 0: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-15 15:39:43,613 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-15 15:39:43,613 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-15 15:39:43,613 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} #83#return; {331#true} is VALID [2022-04-15 15:39:43,614 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-15 15:39:43,619 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:43,624 INFO L290 TraceCheckUtils]: 0: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-15 15:39:43,624 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-15 15:39:43,624 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-15 15:39:43,624 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} #85#return; {331#true} is VALID [2022-04-15 15:39:43,625 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-15 15:39:43,625 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-15 15:39:43,626 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-15 15:39:43,626 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} #101#return; {331#true} is VALID [2022-04-15 15:39:43,626 INFO L272 TraceCheckUtils]: 4: Hoare triple {331#true} call #t~ret6 := main(); {331#true} is VALID [2022-04-15 15:39:43,626 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-15 15:39:43,626 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-15 15:39:43,626 INFO L290 TraceCheckUtils]: 7: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-15 15:39:43,626 INFO L290 TraceCheckUtils]: 8: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-15 15:39:43,627 INFO L290 TraceCheckUtils]: 9: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-15 15:39:43,627 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {331#true} {331#true} #81#return; {331#true} is VALID [2022-04-15 15:39:43,627 INFO L290 TraceCheckUtils]: 11: Hoare triple {331#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {331#true} is VALID [2022-04-15 15:39:43,627 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-15 15:39:43,627 INFO L290 TraceCheckUtils]: 13: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-15 15:39:43,628 INFO L290 TraceCheckUtils]: 14: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-15 15:39:43,628 INFO L290 TraceCheckUtils]: 15: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-15 15:39:43,628 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {331#true} {331#true} #83#return; {331#true} is VALID [2022-04-15 15:39:43,628 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-15 15:39:43,628 INFO L290 TraceCheckUtils]: 18: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-15 15:39:43,628 INFO L290 TraceCheckUtils]: 19: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-15 15:39:43,629 INFO L290 TraceCheckUtils]: 20: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-15 15:39:43,629 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {331#true} {331#true} #85#return; {331#true} is VALID [2022-04-15 15:39:43,629 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-15 15:39:43,630 INFO L290 TraceCheckUtils]: 23: Hoare triple {348#(= main_~q~0 0)} assume !false; {348#(= main_~q~0 0)} is VALID [2022-04-15 15:39:43,630 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-15 15:39:43,631 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-15 15:39:43,631 INFO L290 TraceCheckUtils]: 26: Hoare triple {350#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {332#false} is VALID [2022-04-15 15:39:43,631 INFO L290 TraceCheckUtils]: 27: Hoare triple {332#false} assume !false; {332#false} is VALID [2022-04-15 15:39:43,632 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-15 15:39:43,632 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:39:43,632 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [836626677] [2022-04-15 15:39:43,632 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [836626677] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:43,632 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:43,632 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:39:43,633 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:39:43,633 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1643905219] [2022-04-15 15:39:43,633 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1643905219] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:43,633 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:43,633 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:39:43,633 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [120987837] [2022-04-15 15:39:43,633 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:39:43,640 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-15 15:39:43,641 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:39:43,641 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-15 15:39:43,660 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-15 15:39:43,660 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 15:39:43,660 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:43,661 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 15:39:43,661 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-15 15:39:43,661 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-15 15:39:44,141 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:44,141 INFO L93 Difference]: Finished difference Result 46 states and 60 transitions. [2022-04-15 15:39:44,141 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-15 15:39:44,143 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-15 15:39:44,145 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:39:44,145 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-15 15:39:44,148 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-15 15:39:44,148 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-15 15:39:44,150 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-15 15:39:44,150 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 60 transitions. [2022-04-15 15:39:44,233 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:39:44,236 INFO L225 Difference]: With dead ends: 46 [2022-04-15 15:39:44,236 INFO L226 Difference]: Without dead ends: 44 [2022-04-15 15:39:44,237 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-15 15:39:44,241 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-15 15:39:44,241 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-15 15:39:44,243 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-15 15:39:44,250 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 37. [2022-04-15 15:39:44,250 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:39:44,250 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-15 15:39:44,250 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-15 15:39:44,251 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-15 15:39:44,254 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:44,254 INFO L93 Difference]: Finished difference Result 44 states and 58 transitions. [2022-04-15 15:39:44,254 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 58 transitions. [2022-04-15 15:39:44,255 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:44,255 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:44,256 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-15 15:39:44,256 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-15 15:39:44,259 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:44,259 INFO L93 Difference]: Finished difference Result 44 states and 58 transitions. [2022-04-15 15:39:44,259 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 58 transitions. [2022-04-15 15:39:44,260 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:44,260 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:44,260 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:39:44,260 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:39:44,261 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-15 15:39:44,263 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 46 transitions. [2022-04-15 15:39:44,263 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 46 transitions. Word has length 28 [2022-04-15 15:39:44,263 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:39:44,263 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 46 transitions. [2022-04-15 15:39:44,264 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-15 15:39:44,264 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 46 transitions. [2022-04-15 15:39:44,308 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:39:44,309 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 46 transitions. [2022-04-15 15:39:44,309 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-15 15:39:44,309 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:39:44,309 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-15 15:39:44,309 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-15 15:39:44,310 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:39:44,310 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:39:44,310 INFO L85 PathProgramCache]: Analyzing trace with hash 1382067636, now seen corresponding path program 1 times [2022-04-15 15:39:44,310 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:44,310 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [15385100] [2022-04-15 15:39:44,311 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:39:44,311 INFO L85 PathProgramCache]: Analyzing trace with hash 1382067636, now seen corresponding path program 2 times [2022-04-15 15:39:44,311 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:39:44,311 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [488109111] [2022-04-15 15:39:44,311 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:39:44,312 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:39:44,341 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:44,424 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 15:39:44,426 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:44,432 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-15 15:39:44,432 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:44,432 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {616#true} {616#true} #101#return; {616#true} is VALID [2022-04-15 15:39:44,432 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 15:39:44,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:44,437 INFO L290 TraceCheckUtils]: 0: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-15 15:39:44,437 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-15 15:39:44,437 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:44,437 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {616#true} #81#return; {616#true} is VALID [2022-04-15 15:39:44,438 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-15 15:39:44,439 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:44,442 INFO L290 TraceCheckUtils]: 0: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-15 15:39:44,442 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-15 15:39:44,442 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:44,442 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {616#true} #83#return; {616#true} is VALID [2022-04-15 15:39:44,442 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-15 15:39:44,443 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:44,446 INFO L290 TraceCheckUtils]: 0: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-15 15:39:44,447 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-15 15:39:44,447 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:44,447 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {616#true} #85#return; {616#true} is VALID [2022-04-15 15:39:44,447 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2022-04-15 15:39:44,454 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:44,465 INFO L290 TraceCheckUtils]: 0: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-15 15:39:44,465 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-15 15:39:44,465 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:44,470 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-15 15:39:44,471 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-15 15:39:44,471 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-15 15:39:44,471 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:44,471 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {616#true} #101#return; {616#true} is VALID [2022-04-15 15:39:44,472 INFO L272 TraceCheckUtils]: 4: Hoare triple {616#true} call #t~ret6 := main(); {616#true} is VALID [2022-04-15 15:39:44,472 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-15 15:39:44,472 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-15 15:39:44,472 INFO L290 TraceCheckUtils]: 7: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-15 15:39:44,472 INFO L290 TraceCheckUtils]: 8: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-15 15:39:44,472 INFO L290 TraceCheckUtils]: 9: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:44,472 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {616#true} {616#true} #81#return; {616#true} is VALID [2022-04-15 15:39:44,472 INFO L290 TraceCheckUtils]: 11: Hoare triple {616#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {616#true} is VALID [2022-04-15 15:39:44,473 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-15 15:39:44,473 INFO L290 TraceCheckUtils]: 13: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-15 15:39:44,473 INFO L290 TraceCheckUtils]: 14: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-15 15:39:44,473 INFO L290 TraceCheckUtils]: 15: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:44,473 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {616#true} {616#true} #83#return; {616#true} is VALID [2022-04-15 15:39:44,473 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-15 15:39:44,473 INFO L290 TraceCheckUtils]: 18: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-15 15:39:44,474 INFO L290 TraceCheckUtils]: 19: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-15 15:39:44,474 INFO L290 TraceCheckUtils]: 20: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:44,474 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {616#true} {616#true} #85#return; {616#true} is VALID [2022-04-15 15:39:44,474 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-15 15:39:44,475 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-15 15:39:44,475 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-15 15:39:44,475 INFO L290 TraceCheckUtils]: 25: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-15 15:39:44,475 INFO L290 TraceCheckUtils]: 26: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-15 15:39:44,475 INFO L290 TraceCheckUtils]: 27: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:44,476 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-15 15:39:44,477 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-15 15:39:44,477 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-15 15:39:44,477 INFO L290 TraceCheckUtils]: 31: Hoare triple {639#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {617#false} is VALID [2022-04-15 15:39:44,478 INFO L290 TraceCheckUtils]: 32: Hoare triple {617#false} assume !false; {617#false} is VALID [2022-04-15 15:39:44,478 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-15 15:39:44,478 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:39:44,478 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [488109111] [2022-04-15 15:39:44,478 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [488109111] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:44,479 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:44,479 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:39:44,479 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:39:44,479 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [15385100] [2022-04-15 15:39:44,479 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [15385100] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:44,479 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:44,479 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:39:44,479 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [37159522] [2022-04-15 15:39:44,480 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:39:44,480 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-15 15:39:44,480 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:39:44,481 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-15 15:39:44,499 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-15 15:39:44,499 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 15:39:44,499 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:44,500 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 15:39:44,500 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-15 15:39:44,500 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-15 15:39:44,943 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:44,943 INFO L93 Difference]: Finished difference Result 50 states and 63 transitions. [2022-04-15 15:39:44,943 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-15 15:39:44,944 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-15 15:39:44,944 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:39:44,944 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-15 15:39:44,946 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-15 15:39:44,947 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-15 15:39:44,949 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-15 15:39:44,949 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 60 transitions. [2022-04-15 15:39:45,015 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:39:45,017 INFO L225 Difference]: With dead ends: 50 [2022-04-15 15:39:45,017 INFO L226 Difference]: Without dead ends: 48 [2022-04-15 15:39:45,017 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-15 15:39:45,018 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-15 15:39:45,019 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-15 15:39:45,020 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-15 15:39:45,026 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 41. [2022-04-15 15:39:45,026 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:39:45,027 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-15 15:39:45,027 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-15 15:39:45,028 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-15 15:39:45,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:45,030 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-15 15:39:45,031 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-15 15:39:45,031 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:45,032 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:45,032 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-15 15:39:45,032 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-15 15:39:45,039 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:45,039 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-15 15:39:45,039 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-15 15:39:45,042 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:45,042 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:45,042 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:39:45,042 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:39:45,043 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-15 15:39:45,045 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 49 transitions. [2022-04-15 15:39:45,045 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 49 transitions. Word has length 33 [2022-04-15 15:39:45,045 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:39:45,045 INFO L478 AbstractCegarLoop]: Abstraction has 41 states and 49 transitions. [2022-04-15 15:39:45,046 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-15 15:39:45,046 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 41 states and 49 transitions. [2022-04-15 15:39:45,100 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:39:45,100 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 49 transitions. [2022-04-15 15:39:45,101 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-15 15:39:45,101 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:39:45,102 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-15 15:39:45,102 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-04-15 15:39:45,105 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:39:45,106 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:39:45,106 INFO L85 PathProgramCache]: Analyzing trace with hash -1455208590, now seen corresponding path program 1 times [2022-04-15 15:39:45,106 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:45,110 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [109601919] [2022-04-15 15:39:45,111 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:39:45,111 INFO L85 PathProgramCache]: Analyzing trace with hash -1455208590, now seen corresponding path program 2 times [2022-04-15 15:39:45,111 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:39:45,111 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1826963006] [2022-04-15 15:39:45,111 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:39:45,111 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:39:45,133 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:39:45,133 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [376775826] [2022-04-15 15:39:45,133 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:39:45,133 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:39:45,134 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:39:45,135 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:39:45,171 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-15 15:39:45,202 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:39:45,203 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:39:45,207 INFO L263 TraceCheckSpWp]: Trace formula consists of 106 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 15:39:45,233 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:45,237 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:39:45,447 INFO L272 TraceCheckUtils]: 0: Hoare triple {929#true} call ULTIMATE.init(); {929#true} is VALID [2022-04-15 15:39:45,448 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-15 15:39:45,448 INFO L290 TraceCheckUtils]: 2: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-15 15:39:45,448 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {929#true} {929#true} #101#return; {929#true} is VALID [2022-04-15 15:39:45,448 INFO L272 TraceCheckUtils]: 4: Hoare triple {929#true} call #t~ret6 := main(); {929#true} is VALID [2022-04-15 15:39:45,448 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-15 15:39:45,448 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-15 15:39:45,449 INFO L290 TraceCheckUtils]: 7: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-15 15:39:45,449 INFO L290 TraceCheckUtils]: 8: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-15 15:39:45,449 INFO L290 TraceCheckUtils]: 9: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-15 15:39:45,449 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {929#true} {929#true} #81#return; {929#true} is VALID [2022-04-15 15:39:45,449 INFO L290 TraceCheckUtils]: 11: Hoare triple {929#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {929#true} is VALID [2022-04-15 15:39:45,449 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-15 15:39:45,449 INFO L290 TraceCheckUtils]: 13: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-15 15:39:45,450 INFO L290 TraceCheckUtils]: 14: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-15 15:39:45,450 INFO L290 TraceCheckUtils]: 15: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-15 15:39:45,450 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {929#true} {929#true} #83#return; {929#true} is VALID [2022-04-15 15:39:45,450 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-15 15:39:45,450 INFO L290 TraceCheckUtils]: 18: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-15 15:39:45,450 INFO L290 TraceCheckUtils]: 19: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-15 15:39:45,450 INFO L290 TraceCheckUtils]: 20: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-15 15:39:45,451 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {929#true} {929#true} #85#return; {929#true} is VALID [2022-04-15 15:39:45,451 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-15 15:39:45,452 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-15 15:39:45,452 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-15 15:39:45,452 INFO L290 TraceCheckUtils]: 25: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-15 15:39:45,452 INFO L290 TraceCheckUtils]: 26: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-15 15:39:45,452 INFO L290 TraceCheckUtils]: 27: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-15 15:39:45,453 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-15 15:39:45,453 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-15 15:39:45,453 INFO L290 TraceCheckUtils]: 30: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-15 15:39:45,453 INFO L290 TraceCheckUtils]: 31: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-15 15:39:45,453 INFO L290 TraceCheckUtils]: 32: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-15 15:39:45,454 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-15 15:39:45,455 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-15 15:39:45,455 INFO L290 TraceCheckUtils]: 35: Hoare triple {1037#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1041#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:39:45,456 INFO L290 TraceCheckUtils]: 36: Hoare triple {1041#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {930#false} is VALID [2022-04-15 15:39:45,456 INFO L290 TraceCheckUtils]: 37: Hoare triple {930#false} assume !false; {930#false} is VALID [2022-04-15 15:39:45,456 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-15 15:39:45,456 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 15:39:45,457 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:39:45,457 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1826963006] [2022-04-15 15:39:45,457 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:39:45,457 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [376775826] [2022-04-15 15:39:45,457 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [376775826] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:45,457 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:45,457 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 15:39:45,458 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:39:45,458 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [109601919] [2022-04-15 15:39:45,458 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [109601919] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:45,458 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:45,458 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 15:39:45,458 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [257035246] [2022-04-15 15:39:45,458 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:39:45,459 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-15 15:39:45,459 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:39:45,459 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-15 15:39:45,496 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-15 15:39:45,497 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 15:39:45,497 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:45,497 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 15:39:45,497 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 15:39:45,497 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-15 15:39:47,664 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [] [2022-04-15 15:39:47,933 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:47,933 INFO L93 Difference]: Finished difference Result 58 states and 73 transitions. [2022-04-15 15:39:47,933 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 15:39:47,934 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-15 15:39:47,934 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:39:47,934 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-15 15:39:47,936 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-15 15:39:47,936 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-15 15:39:47,938 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-15 15:39:47,938 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 67 transitions. [2022-04-15 15:39:48,017 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-15 15:39:48,019 INFO L225 Difference]: With dead ends: 58 [2022-04-15 15:39:48,019 INFO L226 Difference]: Without dead ends: 55 [2022-04-15 15:39:48,020 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-15 15:39:48,020 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 8 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 49 mSolverCounterSat, 2 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.1s 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.1s IncrementalHoareTripleChecker+Time [2022-04-15 15:39:48,021 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.1s Time] [2022-04-15 15:39:48,021 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-15 15:39:48,033 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 55. [2022-04-15 15:39:48,034 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:39:48,034 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-15 15:39:48,035 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-15 15:39:48,035 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-15 15:39:48,038 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:48,038 INFO L93 Difference]: Finished difference Result 55 states and 69 transitions. [2022-04-15 15:39:48,038 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 69 transitions. [2022-04-15 15:39:48,038 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:48,039 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:48,039 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-15 15:39:48,039 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-15 15:39:48,042 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:48,043 INFO L93 Difference]: Finished difference Result 55 states and 69 transitions. [2022-04-15 15:39:48,043 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 69 transitions. [2022-04-15 15:39:48,043 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:48,043 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:48,043 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:39:48,044 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:39:48,044 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-15 15:39:48,046 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 69 transitions. [2022-04-15 15:39:48,047 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 69 transitions. Word has length 38 [2022-04-15 15:39:48,047 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:39:48,047 INFO L478 AbstractCegarLoop]: Abstraction has 55 states and 69 transitions. [2022-04-15 15:39:48,047 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-15 15:39:48,047 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 55 states and 69 transitions. [2022-04-15 15:39:48,148 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-15 15:39:48,148 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 69 transitions. [2022-04-15 15:39:48,149 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-15 15:39:48,149 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:39:48,149 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-15 15:39:48,177 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-15 15:39:48,350 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-15 15:39:48,350 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:39:48,351 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:39:48,351 INFO L85 PathProgramCache]: Analyzing trace with hash -1688067263, now seen corresponding path program 1 times [2022-04-15 15:39:48,351 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:48,351 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [484160082] [2022-04-15 15:39:48,352 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:39:48,352 INFO L85 PathProgramCache]: Analyzing trace with hash -1688067263, now seen corresponding path program 2 times [2022-04-15 15:39:48,352 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:39:48,352 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1062940068] [2022-04-15 15:39:48,352 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:39:48,352 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:39:48,371 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:39:48,371 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1966279212] [2022-04-15 15:39:48,371 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:39:48,372 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:39:48,372 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:39:48,380 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:39:48,409 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-15 15:39:48,440 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:39:48,440 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:39:48,441 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-15 15:39:48,459 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:48,460 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:39:50,092 INFO L272 TraceCheckUtils]: 0: Hoare triple {1385#true} call ULTIMATE.init(); {1385#true} is VALID [2022-04-15 15:39:50,093 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-15 15:39:50,093 INFO L290 TraceCheckUtils]: 2: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:50,093 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1385#true} {1385#true} #101#return; {1385#true} is VALID [2022-04-15 15:39:50,093 INFO L272 TraceCheckUtils]: 4: Hoare triple {1385#true} call #t~ret6 := main(); {1385#true} is VALID [2022-04-15 15:39:50,093 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-15 15:39:50,094 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-15 15:39:50,094 INFO L290 TraceCheckUtils]: 7: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:50,094 INFO L290 TraceCheckUtils]: 8: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:50,094 INFO L290 TraceCheckUtils]: 9: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:50,094 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1385#true} {1385#true} #81#return; {1385#true} is VALID [2022-04-15 15:39:50,094 INFO L290 TraceCheckUtils]: 11: Hoare triple {1385#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {1385#true} is VALID [2022-04-15 15:39:50,095 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-15 15:39:50,095 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-15 15:39:50,096 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-15 15:39:50,096 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-15 15:39:50,097 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-15 15:39:50,097 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-15 15:39:50,097 INFO L290 TraceCheckUtils]: 18: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:50,097 INFO L290 TraceCheckUtils]: 19: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:50,097 INFO L290 TraceCheckUtils]: 20: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:50,098 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-15 15:39:50,098 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-15 15:39:50,099 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-15 15:39:50,099 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-15 15:39:50,099 INFO L290 TraceCheckUtils]: 25: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:50,099 INFO L290 TraceCheckUtils]: 26: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:50,099 INFO L290 TraceCheckUtils]: 27: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:50,100 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-15 15:39:50,100 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-15 15:39:50,101 INFO L290 TraceCheckUtils]: 30: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:50,101 INFO L290 TraceCheckUtils]: 31: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:50,101 INFO L290 TraceCheckUtils]: 32: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:50,102 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-15 15:39:50,102 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-15 15:39:50,102 INFO L290 TraceCheckUtils]: 35: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:50,102 INFO L290 TraceCheckUtils]: 36: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:50,102 INFO L290 TraceCheckUtils]: 37: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:50,103 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-15 15:39:50,104 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-15 15:39:50,104 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-15 15:39:50,106 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-15 15:39:50,106 INFO L290 TraceCheckUtils]: 42: Hoare triple {1518#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1522#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:39:50,107 INFO L290 TraceCheckUtils]: 43: Hoare triple {1522#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1386#false} is VALID [2022-04-15 15:39:50,107 INFO L290 TraceCheckUtils]: 44: Hoare triple {1386#false} assume !false; {1386#false} is VALID [2022-04-15 15:39:50,107 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-15 15:39:50,107 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:39:50,661 INFO L290 TraceCheckUtils]: 44: Hoare triple {1386#false} assume !false; {1386#false} is VALID [2022-04-15 15:39:50,662 INFO L290 TraceCheckUtils]: 43: Hoare triple {1522#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1386#false} is VALID [2022-04-15 15:39:50,662 INFO L290 TraceCheckUtils]: 42: Hoare triple {1518#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1522#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:39:50,663 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-15 15:39:50,664 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-15 15:39:50,664 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-15 15:39:50,665 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-15 15:39:50,665 INFO L290 TraceCheckUtils]: 37: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:50,665 INFO L290 TraceCheckUtils]: 36: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:50,665 INFO L290 TraceCheckUtils]: 35: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:50,665 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-15 15:39:50,667 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-15 15:39:50,667 INFO L290 TraceCheckUtils]: 32: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:50,667 INFO L290 TraceCheckUtils]: 31: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:50,667 INFO L290 TraceCheckUtils]: 30: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:50,668 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-15 15:39:50,669 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-15 15:39:50,669 INFO L290 TraceCheckUtils]: 27: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:50,669 INFO L290 TraceCheckUtils]: 26: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:50,669 INFO L290 TraceCheckUtils]: 25: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:50,669 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-15 15:39:50,670 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-15 15:39:50,670 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-15 15:39:50,671 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1385#true} {1385#true} #85#return; {1385#true} is VALID [2022-04-15 15:39:50,671 INFO L290 TraceCheckUtils]: 20: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:50,675 INFO L290 TraceCheckUtils]: 19: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:50,676 INFO L290 TraceCheckUtils]: 18: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:50,682 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-15 15:39:50,682 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1385#true} {1385#true} #83#return; {1385#true} is VALID [2022-04-15 15:39:50,682 INFO L290 TraceCheckUtils]: 15: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:50,683 INFO L290 TraceCheckUtils]: 14: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:50,683 INFO L290 TraceCheckUtils]: 13: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:50,683 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-15 15:39:50,683 INFO L290 TraceCheckUtils]: 11: Hoare triple {1385#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {1385#true} is VALID [2022-04-15 15:39:50,683 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1385#true} {1385#true} #81#return; {1385#true} is VALID [2022-04-15 15:39:50,683 INFO L290 TraceCheckUtils]: 9: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:50,683 INFO L290 TraceCheckUtils]: 8: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:50,683 INFO L290 TraceCheckUtils]: 7: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:50,684 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-15 15:39:50,684 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-15 15:39:50,684 INFO L272 TraceCheckUtils]: 4: Hoare triple {1385#true} call #t~ret6 := main(); {1385#true} is VALID [2022-04-15 15:39:50,684 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1385#true} {1385#true} #101#return; {1385#true} is VALID [2022-04-15 15:39:50,684 INFO L290 TraceCheckUtils]: 2: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:50,684 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-15 15:39:50,684 INFO L272 TraceCheckUtils]: 0: Hoare triple {1385#true} call ULTIMATE.init(); {1385#true} is VALID [2022-04-15 15:39:50,685 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-15 15:39:50,685 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:39:50,685 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1062940068] [2022-04-15 15:39:50,685 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:39:50,685 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1966279212] [2022-04-15 15:39:50,685 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1966279212] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 15:39:50,685 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 15:39:50,685 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-15 15:39:50,686 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:39:50,686 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [484160082] [2022-04-15 15:39:50,686 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [484160082] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:50,686 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:50,686 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:39:50,686 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [125647096] [2022-04-15 15:39:50,686 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:39:50,687 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-15 15:39:50,687 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:39:50,687 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-15 15:39:50,723 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-15 15:39:50,724 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 15:39:50,724 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:50,724 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 15:39:50,725 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-15 15:39:50,725 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-15 15:39:53,198 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 15:39:53,374 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:53,374 INFO L93 Difference]: Finished difference Result 68 states and 86 transitions. [2022-04-15 15:39:53,374 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 15:39:53,374 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-15 15:39:53,375 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:39:53,375 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-15 15:39:53,376 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-15 15:39:53,376 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-15 15:39:53,377 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-15 15:39:53,377 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-04-15 15:39:53,447 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:39:53,449 INFO L225 Difference]: With dead ends: 68 [2022-04-15 15:39:53,449 INFO L226 Difference]: Without dead ends: 66 [2022-04-15 15:39:53,450 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 90 GetRequests, 79 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=30, Invalid=102, Unknown=0, NotChecked=0, Total=132 [2022-04-15 15:39:53,450 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 12 mSDsluCounter, 109 mSDsCounter, 0 mSdLazyCounter, 67 mSolverCounterSat, 1 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.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, 67 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.2s IncrementalHoareTripleChecker+Time [2022-04-15 15:39:53,451 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 151 Invalid, 69 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 67 Invalid, 1 Unknown, 0 Unchecked, 2.2s Time] [2022-04-15 15:39:53,451 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2022-04-15 15:39:53,469 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 64. [2022-04-15 15:39:53,469 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:39:53,470 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-15 15:39:53,470 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-15 15:39:53,471 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-15 15:39:53,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:53,474 INFO L93 Difference]: Finished difference Result 66 states and 84 transitions. [2022-04-15 15:39:53,474 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 84 transitions. [2022-04-15 15:39:53,475 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:53,475 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:53,475 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-15 15:39:53,475 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-15 15:39:53,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:53,479 INFO L93 Difference]: Finished difference Result 66 states and 84 transitions. [2022-04-15 15:39:53,479 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 84 transitions. [2022-04-15 15:39:53,479 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:53,479 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:53,479 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:39:53,479 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:39:53,481 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-15 15:39:53,485 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 81 transitions. [2022-04-15 15:39:53,486 INFO L78 Accepts]: Start accepts. Automaton has 64 states and 81 transitions. Word has length 45 [2022-04-15 15:39:53,486 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:39:53,486 INFO L478 AbstractCegarLoop]: Abstraction has 64 states and 81 transitions. [2022-04-15 15:39:53,486 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-15 15:39:53,486 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 64 states and 81 transitions. [2022-04-15 15:39:53,602 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-15 15:39:53,602 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 81 transitions. [2022-04-15 15:39:53,602 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-15 15:39:53,603 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:39:53,603 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-15 15:39:53,619 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-15 15:39:53,803 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:39:53,804 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:39:53,804 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:39:53,804 INFO L85 PathProgramCache]: Analyzing trace with hash -1471734606, now seen corresponding path program 1 times [2022-04-15 15:39:53,804 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:53,804 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [784834795] [2022-04-15 15:39:53,805 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:39:53,805 INFO L85 PathProgramCache]: Analyzing trace with hash -1471734606, now seen corresponding path program 2 times [2022-04-15 15:39:53,805 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:39:53,805 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [578259224] [2022-04-15 15:39:53,805 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:39:53,805 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:39:53,821 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:39:53,822 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1077876383] [2022-04-15 15:39:53,822 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:39:53,822 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:39:53,822 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:39:53,823 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:39:53,843 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-15 15:39:53,943 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:39:53,944 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:39:53,945 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-15 15:39:53,961 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:53,963 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:39:56,917 INFO L272 TraceCheckUtils]: 0: Hoare triple {2063#true} call ULTIMATE.init(); {2063#true} is VALID [2022-04-15 15:39:56,917 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-15 15:39:56,917 INFO L290 TraceCheckUtils]: 2: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:56,918 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2063#true} {2063#true} #101#return; {2063#true} is VALID [2022-04-15 15:39:56,918 INFO L272 TraceCheckUtils]: 4: Hoare triple {2063#true} call #t~ret6 := main(); {2063#true} is VALID [2022-04-15 15:39:56,918 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-15 15:39:56,918 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-15 15:39:56,918 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-15 15:39:56,919 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-15 15:39:56,919 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-15 15:39:56,920 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-15 15:39:56,920 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-15 15:39:56,920 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-15 15:39:56,921 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-15 15:39:56,921 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-15 15:39:56,921 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-15 15:39:56,922 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-15 15:39:56,922 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-15 15:39:56,923 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-15 15:39:56,923 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-15 15:39:56,923 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-15 15:39:56,924 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-15 15:39:56,924 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-15 15:39:56,925 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-15 15:39:56,925 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-15 15:39:56,925 INFO L290 TraceCheckUtils]: 25: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:56,925 INFO L290 TraceCheckUtils]: 26: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:56,925 INFO L290 TraceCheckUtils]: 27: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:56,926 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-15 15:39:56,926 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-15 15:39:56,926 INFO L290 TraceCheckUtils]: 30: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:56,926 INFO L290 TraceCheckUtils]: 31: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:56,926 INFO L290 TraceCheckUtils]: 32: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:56,927 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-15 15:39:56,927 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-15 15:39:56,927 INFO L290 TraceCheckUtils]: 35: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:56,927 INFO L290 TraceCheckUtils]: 36: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:56,927 INFO L290 TraceCheckUtils]: 37: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:56,928 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-15 15:39:56,930 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-15 15:39:56,931 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-15 15:39:56,931 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-15 15:39:56,931 INFO L290 TraceCheckUtils]: 42: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:56,931 INFO L290 TraceCheckUtils]: 43: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:56,931 INFO L290 TraceCheckUtils]: 44: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:56,932 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-15 15:39:56,932 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-15 15:39:56,932 INFO L290 TraceCheckUtils]: 47: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:56,932 INFO L290 TraceCheckUtils]: 48: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:56,932 INFO L290 TraceCheckUtils]: 49: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:56,933 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-15 15:39:56,943 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-15 15:39:56,943 INFO L290 TraceCheckUtils]: 52: Hoare triple {2228#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2232#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:39:56,944 INFO L290 TraceCheckUtils]: 53: Hoare triple {2232#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2064#false} is VALID [2022-04-15 15:39:56,944 INFO L290 TraceCheckUtils]: 54: Hoare triple {2064#false} assume !false; {2064#false} is VALID [2022-04-15 15:39:56,944 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-15 15:39:56,944 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:39:57,936 INFO L290 TraceCheckUtils]: 54: Hoare triple {2064#false} assume !false; {2064#false} is VALID [2022-04-15 15:39:57,937 INFO L290 TraceCheckUtils]: 53: Hoare triple {2232#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2064#false} is VALID [2022-04-15 15:39:57,937 INFO L290 TraceCheckUtils]: 52: Hoare triple {2228#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2232#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:39:57,938 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-15 15:39:57,938 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-15 15:39:57,938 INFO L290 TraceCheckUtils]: 49: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:57,938 INFO L290 TraceCheckUtils]: 48: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:57,939 INFO L290 TraceCheckUtils]: 47: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:57,939 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-15 15:39:57,941 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-15 15:39:57,941 INFO L290 TraceCheckUtils]: 44: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:57,941 INFO L290 TraceCheckUtils]: 43: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:57,941 INFO L290 TraceCheckUtils]: 42: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:57,941 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-15 15:39:57,941 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-15 15:39:59,143 INFO 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 VALID [2022-04-15 15:39:59,144 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-15 15:39:59,144 INFO L290 TraceCheckUtils]: 37: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:59,144 INFO L290 TraceCheckUtils]: 36: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:59,144 INFO L290 TraceCheckUtils]: 35: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:59,144 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-15 15:39:59,145 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-15 15:39:59,145 INFO L290 TraceCheckUtils]: 32: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:59,145 INFO L290 TraceCheckUtils]: 31: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:59,145 INFO L290 TraceCheckUtils]: 30: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:59,145 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-15 15:39:59,147 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-15 15:39:59,148 INFO L290 TraceCheckUtils]: 27: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:59,148 INFO L290 TraceCheckUtils]: 26: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:59,148 INFO L290 TraceCheckUtils]: 25: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:59,148 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-15 15:39:59,148 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-15 15:39:59,149 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-15 15:39:59,149 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2063#true} {2063#true} #85#return; {2063#true} is VALID [2022-04-15 15:39:59,149 INFO L290 TraceCheckUtils]: 20: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:59,149 INFO L290 TraceCheckUtils]: 19: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:59,149 INFO L290 TraceCheckUtils]: 18: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:59,149 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-15 15:39:59,149 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2063#true} {2063#true} #83#return; {2063#true} is VALID [2022-04-15 15:39:59,149 INFO L290 TraceCheckUtils]: 15: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:59,149 INFO L290 TraceCheckUtils]: 14: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:59,150 INFO L290 TraceCheckUtils]: 13: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:59,150 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-15 15:39:59,150 INFO L290 TraceCheckUtils]: 11: Hoare triple {2063#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2063#true} is VALID [2022-04-15 15:39:59,150 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2063#true} {2063#true} #81#return; {2063#true} is VALID [2022-04-15 15:39:59,150 INFO L290 TraceCheckUtils]: 9: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:59,150 INFO L290 TraceCheckUtils]: 8: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:59,150 INFO L290 TraceCheckUtils]: 7: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:59,150 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-15 15:39:59,150 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-15 15:39:59,150 INFO L272 TraceCheckUtils]: 4: Hoare triple {2063#true} call #t~ret6 := main(); {2063#true} is VALID [2022-04-15 15:39:59,151 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2063#true} {2063#true} #101#return; {2063#true} is VALID [2022-04-15 15:39:59,151 INFO L290 TraceCheckUtils]: 2: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:59,151 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-15 15:39:59,151 INFO L272 TraceCheckUtils]: 0: Hoare triple {2063#true} call ULTIMATE.init(); {2063#true} is VALID [2022-04-15 15:39:59,151 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-15 15:39:59,151 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:39:59,151 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [578259224] [2022-04-15 15:39:59,152 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:39:59,152 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1077876383] [2022-04-15 15:39:59,152 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1077876383] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 15:39:59,152 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 15:39:59,152 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [11] total 13 [2022-04-15 15:39:59,152 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:39:59,152 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [784834795] [2022-04-15 15:39:59,152 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [784834795] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:59,152 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:59,152 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:39:59,153 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [875991581] [2022-04-15 15:39:59,153 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:39:59,153 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-15 15:39:59,153 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:39:59,154 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-15 15:40:01,194 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-15 15:40:01,194 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 15:40:01,194 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:40:01,194 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 15:40:01,195 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-15 15:40:01,195 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-15 15:40:08,937 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 15:40:11,521 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 15:40:13,667 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 15:40:18,987 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 15:40:20,022 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:40:20,022 INFO L93 Difference]: Finished difference Result 82 states and 106 transitions. [2022-04-15 15:40:20,022 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 15:40:20,022 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-15 15:40:20,023 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:40:20,023 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-15 15:40:20,025 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 68 transitions. [2022-04-15 15:40:20,025 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-15 15:40:20,026 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 68 transitions. [2022-04-15 15:40:20,027 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 68 transitions. [2022-04-15 15:40:22,117 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-15 15:40:22,119 INFO L225 Difference]: With dead ends: 82 [2022-04-15 15:40:22,120 INFO L226 Difference]: Without dead ends: 80 [2022-04-15 15:40:22,120 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 110 GetRequests, 97 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-15 15:40:22,120 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 10 mSDsluCounter, 118 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 3 mSolverCounterUnsat, 4 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 9.5s 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, 9.8s IncrementalHoareTripleChecker+Time [2022-04-15 15:40:22,121 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 163 Invalid, 80 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 73 Invalid, 4 Unknown, 0 Unchecked, 9.8s Time] [2022-04-15 15:40:22,121 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 80 states. [2022-04-15 15:40:22,154 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 80 to 71. [2022-04-15 15:40:22,154 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:40:22,155 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-15 15:40:22,155 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-15 15:40:22,155 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-15 15:40:22,159 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:40:22,159 INFO L93 Difference]: Finished difference Result 80 states and 104 transitions. [2022-04-15 15:40:22,159 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 104 transitions. [2022-04-15 15:40:22,159 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:40:22,159 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:40:22,160 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-15 15:40:22,160 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-15 15:40:22,163 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:40:22,163 INFO L93 Difference]: Finished difference Result 80 states and 104 transitions. [2022-04-15 15:40:22,164 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 104 transitions. [2022-04-15 15:40:22,164 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:40:22,164 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:40:22,164 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:40:22,164 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:40:22,165 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-15 15:40:22,167 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 89 transitions. [2022-04-15 15:40:22,168 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 89 transitions. Word has length 55 [2022-04-15 15:40:22,168 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:40:22,168 INFO L478 AbstractCegarLoop]: Abstraction has 71 states and 89 transitions. [2022-04-15 15:40:22,168 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-15 15:40:22,168 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 71 states and 89 transitions. [2022-04-15 15:40:24,657 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-15 15:40:24,657 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 89 transitions. [2022-04-15 15:40:24,658 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-15 15:40:24,658 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:40:24,658 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-15 15:40:24,663 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-15 15:40:24,862 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:40:24,863 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:40:24,863 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:40:24,863 INFO L85 PathProgramCache]: Analyzing trace with hash -682689219, now seen corresponding path program 1 times [2022-04-15 15:40:24,863 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:40:24,863 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1131403124] [2022-04-15 15:40:24,864 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:40:24,864 INFO L85 PathProgramCache]: Analyzing trace with hash -682689219, now seen corresponding path program 2 times [2022-04-15 15:40:24,864 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:40:24,864 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [202560179] [2022-04-15 15:40:24,864 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:40:24,864 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:40:24,874 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:40:24,874 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1073077368] [2022-04-15 15:40:24,875 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:40:24,875 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:40:24,875 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:40:24,886 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:40:24,887 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-15 15:40:24,934 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:40:24,935 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:40:24,935 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-15 15:40:24,950 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:40:24,952 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:40:27,308 INFO L272 TraceCheckUtils]: 0: Hoare triple {2873#true} call ULTIMATE.init(); {2873#true} is VALID [2022-04-15 15:40:27,308 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-15 15:40:27,308 INFO L290 TraceCheckUtils]: 2: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:27,308 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2873#true} {2873#true} #101#return; {2873#true} is VALID [2022-04-15 15:40:27,308 INFO L272 TraceCheckUtils]: 4: Hoare triple {2873#true} call #t~ret6 := main(); {2873#true} is VALID [2022-04-15 15:40:27,309 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-15 15:40:27,309 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-15 15:40:27,309 INFO L290 TraceCheckUtils]: 7: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:27,309 INFO L290 TraceCheckUtils]: 8: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:27,309 INFO L290 TraceCheckUtils]: 9: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:27,309 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2873#true} {2873#true} #81#return; {2873#true} is VALID [2022-04-15 15:40:27,309 INFO L290 TraceCheckUtils]: 11: Hoare triple {2873#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2873#true} is VALID [2022-04-15 15:40:27,309 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-15 15:40:27,310 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-15 15:40:27,310 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-15 15:40:27,310 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-15 15:40:27,311 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-15 15:40:27,311 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-15 15:40:27,311 INFO L290 TraceCheckUtils]: 18: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:27,311 INFO L290 TraceCheckUtils]: 19: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:27,312 INFO L290 TraceCheckUtils]: 20: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:27,312 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-15 15:40:27,313 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-15 15:40:27,313 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-15 15:40:27,313 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-15 15:40:27,313 INFO L290 TraceCheckUtils]: 25: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:27,314 INFO L290 TraceCheckUtils]: 26: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:27,314 INFO L290 TraceCheckUtils]: 27: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:27,314 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-15 15:40:27,314 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-15 15:40:27,315 INFO L290 TraceCheckUtils]: 30: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:27,315 INFO L290 TraceCheckUtils]: 31: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:27,315 INFO L290 TraceCheckUtils]: 32: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:27,315 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-15 15:40:27,316 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-15 15:40:27,316 INFO L290 TraceCheckUtils]: 35: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:27,316 INFO L290 TraceCheckUtils]: 36: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:27,316 INFO L290 TraceCheckUtils]: 37: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:27,317 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-15 15:40:27,317 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-15 15:40:27,318 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-15 15:40:27,318 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-15 15:40:27,318 INFO L290 TraceCheckUtils]: 42: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:27,318 INFO L290 TraceCheckUtils]: 43: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:27,318 INFO L290 TraceCheckUtils]: 44: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:27,319 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-15 15:40:27,319 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-15 15:40:27,319 INFO L290 TraceCheckUtils]: 47: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:27,319 INFO L290 TraceCheckUtils]: 48: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:27,319 INFO L290 TraceCheckUtils]: 49: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:27,320 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-15 15:40:27,321 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-15 15:40:27,321 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-15 15:40:27,322 INFO L290 TraceCheckUtils]: 53: Hoare triple {3039#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3043#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:40:27,322 INFO L290 TraceCheckUtils]: 54: Hoare triple {3043#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2874#false} is VALID [2022-04-15 15:40:27,322 INFO L290 TraceCheckUtils]: 55: Hoare triple {2874#false} assume !false; {2874#false} is VALID [2022-04-15 15:40:27,323 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-15 15:40:27,323 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:40:28,893 INFO L290 TraceCheckUtils]: 55: Hoare triple {2874#false} assume !false; {2874#false} is VALID [2022-04-15 15:40:28,893 INFO L290 TraceCheckUtils]: 54: Hoare triple {3043#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2874#false} is VALID [2022-04-15 15:40:28,894 INFO L290 TraceCheckUtils]: 53: Hoare triple {3039#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3043#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:40:28,895 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-15 15:40:28,895 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-15 15:40:28,896 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-15 15:40:28,896 INFO L290 TraceCheckUtils]: 49: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:28,896 INFO L290 TraceCheckUtils]: 48: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:28,896 INFO L290 TraceCheckUtils]: 47: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:28,896 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-15 15:40:28,897 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-15 15:40:28,897 INFO L290 TraceCheckUtils]: 44: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:28,897 INFO L290 TraceCheckUtils]: 43: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:28,897 INFO L290 TraceCheckUtils]: 42: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:28,897 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-15 15:40:28,898 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-15 15:40:28,898 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-15 15:40:28,899 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-15 15:40:28,899 INFO L290 TraceCheckUtils]: 37: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:28,899 INFO L290 TraceCheckUtils]: 36: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:28,899 INFO L290 TraceCheckUtils]: 35: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:28,899 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-15 15:40:28,900 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-15 15:40:28,900 INFO L290 TraceCheckUtils]: 32: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:28,900 INFO L290 TraceCheckUtils]: 31: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:28,900 INFO L290 TraceCheckUtils]: 30: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:28,900 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-15 15:40:28,901 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-15 15:40:28,901 INFO L290 TraceCheckUtils]: 27: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:28,901 INFO L290 TraceCheckUtils]: 26: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:28,901 INFO L290 TraceCheckUtils]: 25: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:28,901 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-15 15:40:28,902 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-15 15:40:28,902 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-15 15:40:28,903 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2873#true} {2873#true} #85#return; {2873#true} is VALID [2022-04-15 15:40:28,903 INFO L290 TraceCheckUtils]: 20: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:28,903 INFO L290 TraceCheckUtils]: 19: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:28,903 INFO L290 TraceCheckUtils]: 18: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:28,903 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-15 15:40:28,903 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2873#true} {2873#true} #83#return; {2873#true} is VALID [2022-04-15 15:40:28,903 INFO L290 TraceCheckUtils]: 15: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:28,903 INFO L290 TraceCheckUtils]: 14: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:28,903 INFO L290 TraceCheckUtils]: 13: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:28,903 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-15 15:40:28,904 INFO L290 TraceCheckUtils]: 11: Hoare triple {2873#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2873#true} is VALID [2022-04-15 15:40:28,904 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2873#true} {2873#true} #81#return; {2873#true} is VALID [2022-04-15 15:40:28,904 INFO L290 TraceCheckUtils]: 9: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:28,904 INFO L290 TraceCheckUtils]: 8: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:28,904 INFO L290 TraceCheckUtils]: 7: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:28,904 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-15 15:40:28,904 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-15 15:40:28,904 INFO L272 TraceCheckUtils]: 4: Hoare triple {2873#true} call #t~ret6 := main(); {2873#true} is VALID [2022-04-15 15:40:28,904 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2873#true} {2873#true} #101#return; {2873#true} is VALID [2022-04-15 15:40:28,904 INFO L290 TraceCheckUtils]: 2: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:28,904 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-15 15:40:28,905 INFO L272 TraceCheckUtils]: 0: Hoare triple {2873#true} call ULTIMATE.init(); {2873#true} is VALID [2022-04-15 15:40:28,905 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-15 15:40:28,905 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:40:28,905 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [202560179] [2022-04-15 15:40:28,905 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:40:28,905 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1073077368] [2022-04-15 15:40:28,905 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1073077368] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 15:40:28,905 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 15:40:28,906 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-15 15:40:28,906 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:40:28,906 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1131403124] [2022-04-15 15:40:28,906 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1131403124] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:40:28,906 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:40:28,906 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:40:28,906 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1335997659] [2022-04-15 15:40:28,906 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:40:28,907 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-15 15:40:28,907 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:40:28,907 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-15 15:40:28,949 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-15 15:40:28,950 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 15:40:28,950 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:40:28,950 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 15:40:28,950 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-15 15:40:28,950 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-15 15:40:31,636 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 15:40:36,336 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 15:40:38,444 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.11s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 15:40:39,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:40:39,537 INFO L93 Difference]: Finished difference Result 77 states and 94 transitions. [2022-04-15 15:40:39,537 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 15:40:39,537 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-15 15:40:39,537 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:40:39,537 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-15 15:40:39,539 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-15 15:40:39,539 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-15 15:40:39,540 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-15 15:40:39,540 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-15 15:40:39,603 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:40:39,605 INFO L225 Difference]: With dead ends: 77 [2022-04-15 15:40:39,605 INFO L226 Difference]: Without dead ends: 70 [2022-04-15 15:40:39,605 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 112 GetRequests, 101 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=29, Invalid=103, Unknown=0, NotChecked=0, Total=132 [2022-04-15 15:40:39,606 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 9 mSDsluCounter, 102 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 3 mSolverCounterUnsat, 3 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 148 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 3 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 6.8s IncrementalHoareTripleChecker+Time [2022-04-15 15:40:39,606 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 148 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 41 Invalid, 3 Unknown, 0 Unchecked, 6.8s Time] [2022-04-15 15:40:39,607 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-15 15:40:39,636 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2022-04-15 15:40:39,636 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:40:39,637 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-15 15:40:39,637 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-15 15:40:39,637 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-15 15:40:39,641 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:40:39,641 INFO L93 Difference]: Finished difference Result 70 states and 87 transitions. [2022-04-15 15:40:39,641 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 87 transitions. [2022-04-15 15:40:39,642 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:40:39,642 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:40:39,643 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-15 15:40:39,643 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-15 15:40:39,646 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:40:39,646 INFO L93 Difference]: Finished difference Result 70 states and 87 transitions. [2022-04-15 15:40:39,646 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 87 transitions. [2022-04-15 15:40:39,647 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:40:39,647 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:40:39,647 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:40:39,647 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:40:39,647 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-15 15:40:39,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 87 transitions. [2022-04-15 15:40:39,652 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 87 transitions. Word has length 56 [2022-04-15 15:40:39,652 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:40:39,652 INFO L478 AbstractCegarLoop]: Abstraction has 70 states and 87 transitions. [2022-04-15 15:40:39,652 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-15 15:40:39,652 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 70 states and 87 transitions. [2022-04-15 15:40:41,879 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-15 15:40:41,879 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 87 transitions. [2022-04-15 15:40:41,879 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-15 15:40:41,879 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:40:41,880 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-15 15:40:41,899 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-04-15 15:40:42,087 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:40:42,087 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:40:42,088 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:40:42,088 INFO L85 PathProgramCache]: Analyzing trace with hash 1586192473, now seen corresponding path program 1 times [2022-04-15 15:40:42,088 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:40:42,088 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [94485083] [2022-04-15 15:40:42,088 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:40:42,088 INFO L85 PathProgramCache]: Analyzing trace with hash 1586192473, now seen corresponding path program 2 times [2022-04-15 15:40:42,089 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:40:42,089 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1801728640] [2022-04-15 15:40:42,089 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:40:42,089 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:40:42,102 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:40:42,102 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1186453903] [2022-04-15 15:40:42,103 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:40:42,103 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:40:42,103 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:40:42,104 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:40:42,111 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process