/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_valuebound100.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 15:39:37,692 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 15:39:37,702 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 15:39:37,748 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 15:39:37,749 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 15:39:37,750 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 15:39:37,751 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 15:39:37,752 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 15:39:37,753 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 15:39:37,754 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 15:39:37,755 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 15:39:37,756 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 15:39:37,756 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 15:39:37,757 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 15:39:37,757 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 15:39:37,758 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 15:39:37,759 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 15:39:37,760 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 15:39:37,761 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 15:39:37,762 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 15:39:37,764 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 15:39:37,764 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 15:39:37,765 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 15:39:37,766 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 15:39:37,767 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 15:39:37,769 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 15:39:37,769 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 15:39:37,770 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 15:39:37,771 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 15:39:37,771 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 15:39:37,772 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 15:39:37,772 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 15:39:37,773 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 15:39:37,773 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 15:39:37,774 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 15:39:37,775 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 15:39:37,775 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 15:39:37,776 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 15:39:37,776 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 15:39:37,776 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 15:39:37,777 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 15:39:37,777 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 15:39:37,778 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:37,785 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 15:39:37,785 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 15:39:37,786 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 15:39:37,786 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 15:39:37,786 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 15:39:37,786 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 15:39:37,786 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 15:39:37,786 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 15:39:37,786 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 15:39:37,787 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 15:39:37,787 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 15:39:37,787 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 15:39:37,787 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 15:39:37,787 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-15 15:39:37,787 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 15:39:37,787 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 15:39:37,787 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 15:39:37,788 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-15 15:39:37,788 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-15 15:39:37,788 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-15 15:39:37,788 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 15:39:37,788 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-15 15:39:37,788 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:37,976 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 15:39:37,995 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 15:39:37,998 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 15:39:37,999 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 15:39:37,999 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 15:39:38,000 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/hard-u_valuebound100.c [2022-04-15 15:39:38,058 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b9fdff4c3/865b88629d594e2b875e3bc8dac8b94e/FLAG8b63811eb [2022-04-15 15:39:38,447 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 15:39:38,447 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/hard-u_valuebound100.c [2022-04-15 15:39:38,452 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b9fdff4c3/865b88629d594e2b875e3bc8dac8b94e/FLAG8b63811eb [2022-04-15 15:39:38,869 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b9fdff4c3/865b88629d594e2b875e3bc8dac8b94e [2022-04-15 15:39:38,871 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 15:39:38,872 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-15 15:39:38,876 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 15:39:38,876 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 15:39:38,878 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 15:39:38,879 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 03:39:38" (1/1) ... [2022-04-15 15:39:38,880 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@72dd1078 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:39:38, skipping insertion in model container [2022-04-15 15:39:38,880 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 03:39:38" (1/1) ... [2022-04-15 15:39:38,885 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 15:39:38,897 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 15:39:39,028 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_valuebound100.c[537,550] [2022-04-15 15:39:39,044 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 15:39:39,052 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 15:39:39,063 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_valuebound100.c[537,550] [2022-04-15 15:39:39,073 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 15:39:39,083 INFO L208 MainTranslator]: Completed translation [2022-04-15 15:39:39,083 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:39:39 WrapperNode [2022-04-15 15:39:39,084 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 15:39:39,084 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 15:39:39,084 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 15:39:39,084 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 15:39:39,094 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:39" (1/1) ... [2022-04-15 15:39:39,095 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:39" (1/1) ... [2022-04-15 15:39:39,102 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:39" (1/1) ... [2022-04-15 15:39:39,102 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:39" (1/1) ... [2022-04-15 15:39:39,107 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:39" (1/1) ... [2022-04-15 15:39:39,111 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:39" (1/1) ... [2022-04-15 15:39:39,112 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:39" (1/1) ... [2022-04-15 15:39:39,114 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 15:39:39,114 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 15:39:39,114 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 15:39:39,115 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 15:39:39,115 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:39:39" (1/1) ... [2022-04-15 15:39:39,123 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 15:39:39,138 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:39:39,148 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:39,149 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:39,175 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 15:39:39,176 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 15:39:39,176 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 15:39:39,176 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 15:39:39,176 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 15:39:39,176 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 15:39:39,176 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 15:39:39,176 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 15:39:39,177 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 15:39:39,177 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 15:39:39,177 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-15 15:39:39,177 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 15:39:39,177 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 15:39:39,177 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 15:39:39,177 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 15:39:39,177 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 15:39:39,178 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 15:39:39,178 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 15:39:39,178 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 15:39:39,178 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 15:39:39,231 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 15:39:39,232 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 15:39:39,443 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 15:39:39,449 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 15:39:39,449 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-15 15:39:39,450 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 03:39:39 BoogieIcfgContainer [2022-04-15 15:39:39,450 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 15:39:39,452 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 15:39:39,452 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 15:39:39,454 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 15:39:39,455 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 03:39:38" (1/3) ... [2022-04-15 15:39:39,455 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@62edd259 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 03:39:39, skipping insertion in model container [2022-04-15 15:39:39,455 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:39:39" (2/3) ... [2022-04-15 15:39:39,455 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@62edd259 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 03:39:39, skipping insertion in model container [2022-04-15 15:39:39,456 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 03:39:39" (3/3) ... [2022-04-15 15:39:39,457 INFO L111 eAbstractionObserver]: Analyzing ICFG hard-u_valuebound100.c [2022-04-15 15:39:39,460 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-15 15:39:39,461 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 15:39:39,494 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 15:39:39,500 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:39,500 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 15:39:39,542 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:39,549 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 15:39:39,549 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:39:39,550 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:39,550 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:39:39,554 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:39:39,555 INFO L85 PathProgramCache]: Analyzing trace with hash -1784424332, now seen corresponding path program 1 times [2022-04-15 15:39:39,574 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:39,575 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1920021249] [2022-04-15 15:39:39,586 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:39:39,586 INFO L85 PathProgramCache]: Analyzing trace with hash -1784424332, now seen corresponding path program 2 times [2022-04-15 15:39:39,589 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:39:39,589 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1245396702] [2022-04-15 15:39:39,590 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:39:39,590 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:39:39,713 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:39,789 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 15:39:39,800 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:39,826 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:39,827 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-15 15:39:39,827 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {41#true} {41#true} #101#return; {41#true} is VALID [2022-04-15 15:39:39,828 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 15:39:39,832 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:39,838 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-15 15:39:39,839 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-15 15:39:39,839 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-15 15:39:39,840 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {41#true} #81#return; {42#false} is VALID [2022-04-15 15:39:39,840 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-15 15:39:39,848 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:39,859 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-15 15:39:39,859 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-15 15:39:39,860 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-15 15:39:39,860 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {42#false} #83#return; {42#false} is VALID [2022-04-15 15:39:39,860 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-15 15:39:39,862 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:39,867 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-15 15:39:39,868 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-15 15:39:39,868 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-15 15:39:39,868 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {42#false} #85#return; {42#false} is VALID [2022-04-15 15:39:39,869 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:39,870 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:39,870 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-15 15:39:39,870 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#true} {41#true} #101#return; {41#true} is VALID [2022-04-15 15:39:39,870 INFO L272 TraceCheckUtils]: 4: Hoare triple {41#true} call #t~ret6 := main(); {41#true} is VALID [2022-04-15 15:39:39,871 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:39,871 INFO L272 TraceCheckUtils]: 6: Hoare triple {41#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 100 then 1 else 0)); {41#true} is VALID [2022-04-15 15:39:39,871 INFO L290 TraceCheckUtils]: 7: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-15 15:39:39,872 INFO L290 TraceCheckUtils]: 8: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-15 15:39:39,872 INFO L290 TraceCheckUtils]: 9: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-15 15:39:39,872 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42#false} {41#true} #81#return; {42#false} is VALID [2022-04-15 15:39:39,872 INFO L290 TraceCheckUtils]: 11: Hoare triple {42#false} ~B~0 := #t~nondet5;havoc #t~nondet5; {42#false} is VALID [2022-04-15 15:39:39,873 INFO L272 TraceCheckUtils]: 12: Hoare triple {42#false} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 100 then 1 else 0)); {41#true} is VALID [2022-04-15 15:39:39,873 INFO L290 TraceCheckUtils]: 13: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-15 15:39:39,874 INFO L290 TraceCheckUtils]: 14: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-15 15:39:39,874 INFO L290 TraceCheckUtils]: 15: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-15 15:39:39,874 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {42#false} {42#false} #83#return; {42#false} is VALID [2022-04-15 15:39:39,874 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:39,874 INFO L290 TraceCheckUtils]: 18: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-15 15:39:39,876 INFO L290 TraceCheckUtils]: 19: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-15 15:39:39,876 INFO L290 TraceCheckUtils]: 20: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-15 15:39:39,877 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {42#false} {42#false} #85#return; {42#false} is VALID [2022-04-15 15:39:39,877 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:39,877 INFO L290 TraceCheckUtils]: 23: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-15 15:39:39,877 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:39,878 INFO L290 TraceCheckUtils]: 25: Hoare triple {42#false} ~cond := #in~cond; {42#false} is VALID [2022-04-15 15:39:39,878 INFO L290 TraceCheckUtils]: 26: Hoare triple {42#false} assume 0 == ~cond; {42#false} is VALID [2022-04-15 15:39:39,879 INFO L290 TraceCheckUtils]: 27: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-15 15:39:39,879 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:39,880 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:39:39,880 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1245396702] [2022-04-15 15:39:39,881 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1245396702] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:39,881 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:39,881 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 15:39:39,883 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:39:39,883 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1920021249] [2022-04-15 15:39:39,884 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1920021249] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:39,884 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:39,884 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 15:39:39,884 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [416800912] [2022-04-15 15:39:39,885 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:39:39,889 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:39,892 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:39:39,895 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:39,920 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:39,921 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 15:39:39,921 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:39,946 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 15:39:39,947 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 15:39:39,949 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:40,133 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:40,133 INFO L93 Difference]: Finished difference Result 69 states and 110 transitions. [2022-04-15 15:39:40,134 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 15:39:40,134 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:40,134 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:39:40,136 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:40,146 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-15 15:39:40,146 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:40,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-15 15:39:40,154 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 110 transitions. [2022-04-15 15:39:40,294 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:40,307 INFO L225 Difference]: With dead ends: 69 [2022-04-15 15:39:40,308 INFO L226 Difference]: Without dead ends: 33 [2022-04-15 15:39:40,310 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:40,313 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 21 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 12 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 12 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 15:39:40,314 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 41 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 12 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 15:39:40,324 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states. [2022-04-15 15:39:40,341 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 33. [2022-04-15 15:39:40,341 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:39:40,342 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:40,342 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:40,343 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:40,347 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:40,348 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-15 15:39:40,348 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-15 15:39:40,349 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:40,349 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:40,349 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:40,350 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:40,353 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:40,354 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-15 15:39:40,354 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-15 15:39:40,354 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:40,355 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:40,355 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:39:40,355 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:39:40,355 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:40,358 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 43 transitions. [2022-04-15 15:39:40,359 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 43 transitions. Word has length 28 [2022-04-15 15:39:40,359 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:39:40,360 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 43 transitions. [2022-04-15 15:39:40,360 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:40,360 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 33 states and 43 transitions. [2022-04-15 15:39:40,408 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:40,408 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-15 15:39:40,409 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 15:39:40,409 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:39:40,409 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:40,410 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 15:39:40,410 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:39:40,410 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:39:40,411 INFO L85 PathProgramCache]: Analyzing trace with hash 1361835634, now seen corresponding path program 1 times [2022-04-15 15:39:40,411 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:40,411 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [343633273] [2022-04-15 15:39:40,411 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:39:40,412 INFO L85 PathProgramCache]: Analyzing trace with hash 1361835634, now seen corresponding path program 2 times [2022-04-15 15:39:40,412 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:39:40,412 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1298950854] [2022-04-15 15:39:40,412 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:39:40,413 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:39:40,437 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:40,493 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 15:39:40,495 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:40,504 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:40,505 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-15 15:39:40,505 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {331#true} {331#true} #101#return; {331#true} is VALID [2022-04-15 15:39:40,505 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 15:39:40,506 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:40,512 INFO L290 TraceCheckUtils]: 0: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-15 15:39:40,514 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-15 15:39:40,516 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-15 15:39:40,517 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} #81#return; {331#true} is VALID [2022-04-15 15:39:40,517 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-15 15:39:40,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:40,523 INFO L290 TraceCheckUtils]: 0: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-15 15:39:40,523 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-15 15:39:40,523 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-15 15:39:40,524 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} #83#return; {331#true} is VALID [2022-04-15 15:39:40,524 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-15 15:39:40,525 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:40,529 INFO L290 TraceCheckUtils]: 0: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-15 15:39:40,530 INFO L290 TraceCheckUtils]: 1: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-15 15:39:40,530 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-15 15:39:40,530 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} #85#return; {331#true} is VALID [2022-04-15 15:39:40,531 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:40,531 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:40,531 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-15 15:39:40,531 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#true} {331#true} #101#return; {331#true} is VALID [2022-04-15 15:39:40,532 INFO L272 TraceCheckUtils]: 4: Hoare triple {331#true} call #t~ret6 := main(); {331#true} is VALID [2022-04-15 15:39:40,532 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:40,532 INFO L272 TraceCheckUtils]: 6: Hoare triple {331#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 100 then 1 else 0)); {331#true} is VALID [2022-04-15 15:39:40,532 INFO L290 TraceCheckUtils]: 7: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-15 15:39:40,532 INFO L290 TraceCheckUtils]: 8: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-15 15:39:40,533 INFO L290 TraceCheckUtils]: 9: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-15 15:39:40,533 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {331#true} {331#true} #81#return; {331#true} is VALID [2022-04-15 15:39:40,533 INFO L290 TraceCheckUtils]: 11: Hoare triple {331#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {331#true} is VALID [2022-04-15 15:39:40,533 INFO L272 TraceCheckUtils]: 12: Hoare triple {331#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 100 then 1 else 0)); {331#true} is VALID [2022-04-15 15:39:40,534 INFO L290 TraceCheckUtils]: 13: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-15 15:39:40,534 INFO L290 TraceCheckUtils]: 14: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-15 15:39:40,534 INFO L290 TraceCheckUtils]: 15: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-15 15:39:40,534 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {331#true} {331#true} #83#return; {331#true} is VALID [2022-04-15 15:39:40,534 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:40,535 INFO L290 TraceCheckUtils]: 18: Hoare triple {331#true} ~cond := #in~cond; {331#true} is VALID [2022-04-15 15:39:40,535 INFO L290 TraceCheckUtils]: 19: Hoare triple {331#true} assume !(0 == ~cond); {331#true} is VALID [2022-04-15 15:39:40,535 INFO L290 TraceCheckUtils]: 20: Hoare triple {331#true} assume true; {331#true} is VALID [2022-04-15 15:39:40,535 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {331#true} {331#true} #85#return; {331#true} is VALID [2022-04-15 15:39:40,536 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:40,536 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:40,537 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:40,538 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:40,538 INFO L290 TraceCheckUtils]: 26: Hoare triple {350#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {332#false} is VALID [2022-04-15 15:39:40,538 INFO L290 TraceCheckUtils]: 27: Hoare triple {332#false} assume !false; {332#false} is VALID [2022-04-15 15:39:40,539 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:40,539 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:39:40,539 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1298950854] [2022-04-15 15:39:40,540 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1298950854] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:40,540 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:40,540 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:39:40,540 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:39:40,540 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [343633273] [2022-04-15 15:39:40,541 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [343633273] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:40,541 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:40,541 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:39:40,541 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1819093186] [2022-04-15 15:39:40,541 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:39:40,542 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:40,542 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:39:40,543 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:40,562 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:40,562 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 15:39:40,562 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:40,563 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 15:39:40,563 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-15 15:39:40,564 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:41,076 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:41,076 INFO L93 Difference]: Finished difference Result 46 states and 60 transitions. [2022-04-15 15:39:41,076 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-15 15:39:41,076 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:41,077 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:39:41,077 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:41,080 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-15 15:39:41,080 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-15 15:39:41,083 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-15 15:39:41,083 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 60 transitions. [2022-04-15 15:39:41,151 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:41,153 INFO L225 Difference]: With dead ends: 46 [2022-04-15 15:39:41,153 INFO L226 Difference]: Without dead ends: 44 [2022-04-15 15:39:41,153 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:41,155 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:41,155 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:41,156 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-15 15:39:41,163 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 37. [2022-04-15 15:39:41,163 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:39:41,164 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:41,164 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:41,165 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:41,168 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:41,168 INFO L93 Difference]: Finished difference Result 44 states and 58 transitions. [2022-04-15 15:39:41,169 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 58 transitions. [2022-04-15 15:39:41,169 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:41,170 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:41,170 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:41,170 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:41,174 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:41,174 INFO L93 Difference]: Finished difference Result 44 states and 58 transitions. [2022-04-15 15:39:41,174 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 58 transitions. [2022-04-15 15:39:41,175 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:41,175 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:41,175 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:39:41,176 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:39:41,176 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:41,178 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 46 transitions. [2022-04-15 15:39:41,179 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 46 transitions. Word has length 28 [2022-04-15 15:39:41,179 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:39:41,179 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 46 transitions. [2022-04-15 15:39:41,179 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:41,180 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 46 transitions. [2022-04-15 15:39:41,230 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:41,231 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 46 transitions. [2022-04-15 15:39:41,231 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-15 15:39:41,231 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:39:41,232 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:41,232 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-15 15:39:41,232 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:39:41,232 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:39:41,232 INFO L85 PathProgramCache]: Analyzing trace with hash 1382067636, now seen corresponding path program 1 times [2022-04-15 15:39:41,233 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:41,233 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [988377198] [2022-04-15 15:39:41,233 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:39:41,233 INFO L85 PathProgramCache]: Analyzing trace with hash 1382067636, now seen corresponding path program 2 times [2022-04-15 15:39:41,233 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:39:41,234 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2021232897] [2022-04-15 15:39:41,234 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:39:41,234 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:39:41,263 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:41,359 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 15:39:41,362 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:41,368 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:41,368 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:41,368 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {616#true} {616#true} #101#return; {616#true} is VALID [2022-04-15 15:39:41,368 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 15:39:41,369 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:41,373 INFO L290 TraceCheckUtils]: 0: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-15 15:39:41,373 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-15 15:39:41,373 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:41,373 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {616#true} #81#return; {616#true} is VALID [2022-04-15 15:39:41,373 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-15 15:39:41,374 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:41,378 INFO L290 TraceCheckUtils]: 0: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-15 15:39:41,378 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-15 15:39:41,378 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:41,378 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {616#true} #83#return; {616#true} is VALID [2022-04-15 15:39:41,378 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-15 15:39:41,379 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:41,383 INFO L290 TraceCheckUtils]: 0: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-15 15:39:41,383 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-15 15:39:41,383 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:41,383 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {616#true} #85#return; {616#true} is VALID [2022-04-15 15:39:41,383 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2022-04-15 15:39:41,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:41,389 INFO L290 TraceCheckUtils]: 0: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-15 15:39:41,389 INFO L290 TraceCheckUtils]: 1: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-15 15:39:41,390 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:41,390 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:41,391 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:41,391 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:41,391 INFO L290 TraceCheckUtils]: 2: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:41,392 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {616#true} {616#true} #101#return; {616#true} is VALID [2022-04-15 15:39:41,392 INFO L272 TraceCheckUtils]: 4: Hoare triple {616#true} call #t~ret6 := main(); {616#true} is VALID [2022-04-15 15:39:41,392 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:41,392 INFO L272 TraceCheckUtils]: 6: Hoare triple {616#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 100 then 1 else 0)); {616#true} is VALID [2022-04-15 15:39:41,392 INFO L290 TraceCheckUtils]: 7: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-15 15:39:41,392 INFO L290 TraceCheckUtils]: 8: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-15 15:39:41,392 INFO L290 TraceCheckUtils]: 9: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:41,393 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {616#true} {616#true} #81#return; {616#true} is VALID [2022-04-15 15:39:41,393 INFO L290 TraceCheckUtils]: 11: Hoare triple {616#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {616#true} is VALID [2022-04-15 15:39:41,393 INFO L272 TraceCheckUtils]: 12: Hoare triple {616#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 100 then 1 else 0)); {616#true} is VALID [2022-04-15 15:39:41,393 INFO L290 TraceCheckUtils]: 13: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-15 15:39:41,393 INFO L290 TraceCheckUtils]: 14: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-15 15:39:41,393 INFO L290 TraceCheckUtils]: 15: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:41,394 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {616#true} {616#true} #83#return; {616#true} is VALID [2022-04-15 15:39:41,394 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:41,394 INFO L290 TraceCheckUtils]: 18: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-15 15:39:41,394 INFO L290 TraceCheckUtils]: 19: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-15 15:39:41,394 INFO L290 TraceCheckUtils]: 20: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:41,394 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {616#true} {616#true} #85#return; {616#true} is VALID [2022-04-15 15:39:41,395 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:41,395 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:41,395 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:41,396 INFO L290 TraceCheckUtils]: 25: Hoare triple {616#true} ~cond := #in~cond; {616#true} is VALID [2022-04-15 15:39:41,396 INFO L290 TraceCheckUtils]: 26: Hoare triple {616#true} assume !(0 == ~cond); {616#true} is VALID [2022-04-15 15:39:41,396 INFO L290 TraceCheckUtils]: 27: Hoare triple {616#true} assume true; {616#true} is VALID [2022-04-15 15:39:41,397 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:41,397 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:41,398 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:41,398 INFO L290 TraceCheckUtils]: 31: Hoare triple {639#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {617#false} is VALID [2022-04-15 15:39:41,398 INFO L290 TraceCheckUtils]: 32: Hoare triple {617#false} assume !false; {617#false} is VALID [2022-04-15 15:39:41,399 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:41,399 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:39:41,399 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2021232897] [2022-04-15 15:39:41,399 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2021232897] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:41,399 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:41,399 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:39:41,400 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:39:41,400 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [988377198] [2022-04-15 15:39:41,400 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [988377198] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:41,400 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:41,400 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:39:41,400 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1786187622] [2022-04-15 15:39:41,400 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:39:41,401 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:41,401 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:39:41,401 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:41,421 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:41,421 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 15:39:41,421 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:41,421 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 15:39:41,422 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-15 15:39:41,422 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:41,854 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:41,854 INFO L93 Difference]: Finished difference Result 50 states and 63 transitions. [2022-04-15 15:39:41,854 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-15 15:39:41,854 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:41,855 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:39:41,855 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:41,857 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-15 15:39:41,857 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:41,859 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-15 15:39:41,859 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 60 transitions. [2022-04-15 15:39:41,924 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:41,926 INFO L225 Difference]: With dead ends: 50 [2022-04-15 15:39:41,927 INFO L226 Difference]: Without dead ends: 48 [2022-04-15 15:39:41,927 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:41,928 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:41,929 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:41,929 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-15 15:39:41,935 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 41. [2022-04-15 15:39:41,936 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:39:41,936 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:41,936 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:41,937 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:41,940 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:41,940 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-15 15:39:41,940 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-15 15:39:41,941 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:41,941 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:41,941 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:41,941 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:41,944 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:41,944 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-15 15:39:41,944 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-15 15:39:41,945 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:41,945 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:41,945 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:39:41,945 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:39:41,946 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:41,948 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 49 transitions. [2022-04-15 15:39:41,948 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 49 transitions. Word has length 33 [2022-04-15 15:39:41,948 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:39:41,948 INFO L478 AbstractCegarLoop]: Abstraction has 41 states and 49 transitions. [2022-04-15 15:39:41,948 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:41,948 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 41 states and 49 transitions. [2022-04-15 15:39:42,001 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:42,002 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 49 transitions. [2022-04-15 15:39:42,002 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-15 15:39:42,002 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:39:42,002 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:42,003 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-04-15 15:39:42,003 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:39:42,003 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:39:42,003 INFO L85 PathProgramCache]: Analyzing trace with hash -1455208590, now seen corresponding path program 1 times [2022-04-15 15:39:42,003 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:42,003 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [420425545] [2022-04-15 15:39:42,004 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:39:42,004 INFO L85 PathProgramCache]: Analyzing trace with hash -1455208590, now seen corresponding path program 2 times [2022-04-15 15:39:42,004 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:39:42,004 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1978940571] [2022-04-15 15:39:42,004 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:39:42,004 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:39:42,024 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:39:42,024 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1168940962] [2022-04-15 15:39:42,025 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:39:42,025 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:39:42,025 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:39:42,027 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:42,041 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:42,089 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:39:42,090 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:39:42,092 INFO L263 TraceCheckSpWp]: Trace formula consists of 106 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 15:39:42,125 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:42,129 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:39:42,402 INFO L272 TraceCheckUtils]: 0: Hoare triple {929#true} call ULTIMATE.init(); {929#true} is VALID [2022-04-15 15:39:42,403 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:42,403 INFO L290 TraceCheckUtils]: 2: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-15 15:39:42,403 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {929#true} {929#true} #101#return; {929#true} is VALID [2022-04-15 15:39:42,403 INFO L272 TraceCheckUtils]: 4: Hoare triple {929#true} call #t~ret6 := main(); {929#true} is VALID [2022-04-15 15:39:42,403 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:42,403 INFO L272 TraceCheckUtils]: 6: Hoare triple {929#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 100 then 1 else 0)); {929#true} is VALID [2022-04-15 15:39:42,404 INFO L290 TraceCheckUtils]: 7: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-15 15:39:42,404 INFO L290 TraceCheckUtils]: 8: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-15 15:39:42,404 INFO L290 TraceCheckUtils]: 9: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-15 15:39:42,404 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {929#true} {929#true} #81#return; {929#true} is VALID [2022-04-15 15:39:42,404 INFO L290 TraceCheckUtils]: 11: Hoare triple {929#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {929#true} is VALID [2022-04-15 15:39:42,404 INFO L272 TraceCheckUtils]: 12: Hoare triple {929#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 100 then 1 else 0)); {929#true} is VALID [2022-04-15 15:39:42,405 INFO L290 TraceCheckUtils]: 13: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-15 15:39:42,405 INFO L290 TraceCheckUtils]: 14: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-15 15:39:42,405 INFO L290 TraceCheckUtils]: 15: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-15 15:39:42,405 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {929#true} {929#true} #83#return; {929#true} is VALID [2022-04-15 15:39:42,405 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:42,405 INFO L290 TraceCheckUtils]: 18: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-15 15:39:42,406 INFO L290 TraceCheckUtils]: 19: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-15 15:39:42,406 INFO L290 TraceCheckUtils]: 20: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-15 15:39:42,406 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {929#true} {929#true} #85#return; {929#true} is VALID [2022-04-15 15:39:42,415 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:42,416 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:42,416 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:42,416 INFO L290 TraceCheckUtils]: 25: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-15 15:39:42,416 INFO L290 TraceCheckUtils]: 26: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-15 15:39:42,417 INFO L290 TraceCheckUtils]: 27: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-15 15:39:42,417 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:42,418 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:42,418 INFO L290 TraceCheckUtils]: 30: Hoare triple {929#true} ~cond := #in~cond; {929#true} is VALID [2022-04-15 15:39:42,418 INFO L290 TraceCheckUtils]: 31: Hoare triple {929#true} assume !(0 == ~cond); {929#true} is VALID [2022-04-15 15:39:42,418 INFO L290 TraceCheckUtils]: 32: Hoare triple {929#true} assume true; {929#true} is VALID [2022-04-15 15:39:42,419 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:42,420 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:42,420 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:42,420 INFO L290 TraceCheckUtils]: 36: Hoare triple {1041#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {930#false} is VALID [2022-04-15 15:39:42,421 INFO L290 TraceCheckUtils]: 37: Hoare triple {930#false} assume !false; {930#false} is VALID [2022-04-15 15:39:42,421 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:42,421 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 15:39:42,421 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:39:42,421 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1978940571] [2022-04-15 15:39:42,422 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:39:42,422 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1168940962] [2022-04-15 15:39:42,422 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1168940962] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:42,422 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:42,422 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 15:39:42,422 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:39:42,423 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [420425545] [2022-04-15 15:39:42,423 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [420425545] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:42,423 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:42,423 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 15:39:42,423 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1970278442] [2022-04-15 15:39:42,423 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:39:42,424 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:42,424 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:39:42,424 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:42,450 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:42,450 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 15:39:42,450 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:42,451 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 15:39:42,451 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 15:39:42,451 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:44,600 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:44,862 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:44,862 INFO L93 Difference]: Finished difference Result 58 states and 73 transitions. [2022-04-15 15:39:44,863 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 15:39:44,863 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:44,863 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:39:44,863 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:44,865 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-15 15:39:44,865 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:44,867 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-15 15:39:44,867 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 67 transitions. [2022-04-15 15:39:44,947 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:44,949 INFO L225 Difference]: With dead ends: 58 [2022-04-15 15:39:44,949 INFO L226 Difference]: Without dead ends: 55 [2022-04-15 15:39:44,949 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:44,950 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:44,951 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:44,951 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-15 15:39:44,964 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 55. [2022-04-15 15:39:44,964 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:39:44,964 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:44,965 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:44,965 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:44,968 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:44,968 INFO L93 Difference]: Finished difference Result 55 states and 69 transitions. [2022-04-15 15:39:44,968 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 69 transitions. [2022-04-15 15:39:44,969 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:44,969 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:44,970 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:44,970 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:44,973 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:44,973 INFO L93 Difference]: Finished difference Result 55 states and 69 transitions. [2022-04-15 15:39:44,973 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 69 transitions. [2022-04-15 15:39:44,973 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:44,974 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:44,974 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:39:44,974 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:39:44,974 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:44,977 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 69 transitions. [2022-04-15 15:39:44,977 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 69 transitions. Word has length 38 [2022-04-15 15:39:44,977 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:39:44,977 INFO L478 AbstractCegarLoop]: Abstraction has 55 states and 69 transitions. [2022-04-15 15:39:44,977 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:44,977 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 55 states and 69 transitions. [2022-04-15 15:39:45,065 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:45,065 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 69 transitions. [2022-04-15 15:39:45,066 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-15 15:39:45,066 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:39:45,066 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:45,093 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:45,279 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:45,279 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:39:45,279 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:39:45,280 INFO L85 PathProgramCache]: Analyzing trace with hash -1688067263, now seen corresponding path program 1 times [2022-04-15 15:39:45,280 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:45,280 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [111678915] [2022-04-15 15:39:45,281 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:39:45,281 INFO L85 PathProgramCache]: Analyzing trace with hash -1688067263, now seen corresponding path program 2 times [2022-04-15 15:39:45,281 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:39:45,281 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [569019435] [2022-04-15 15:39:45,281 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:39:45,281 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:39:45,296 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:39:45,297 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1864133671] [2022-04-15 15:39:45,297 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:39:45,297 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:39:45,297 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:39:45,306 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:45,311 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:45,356 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:39:45,356 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:39:45,357 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-15 15:39:45,369 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:45,370 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:39:46,934 INFO L272 TraceCheckUtils]: 0: Hoare triple {1385#true} call ULTIMATE.init(); {1385#true} is VALID [2022-04-15 15:39:46,934 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:46,934 INFO L290 TraceCheckUtils]: 2: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:46,935 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1385#true} {1385#true} #101#return; {1385#true} is VALID [2022-04-15 15:39:46,935 INFO L272 TraceCheckUtils]: 4: Hoare triple {1385#true} call #t~ret6 := main(); {1385#true} is VALID [2022-04-15 15:39:46,935 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:46,935 INFO L272 TraceCheckUtils]: 6: Hoare triple {1385#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 100 then 1 else 0)); {1385#true} is VALID [2022-04-15 15:39:46,935 INFO L290 TraceCheckUtils]: 7: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:46,935 INFO L290 TraceCheckUtils]: 8: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:46,935 INFO L290 TraceCheckUtils]: 9: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:46,936 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1385#true} {1385#true} #81#return; {1385#true} is VALID [2022-04-15 15:39:46,936 INFO L290 TraceCheckUtils]: 11: Hoare triple {1385#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {1385#true} is VALID [2022-04-15 15:39:46,936 INFO L272 TraceCheckUtils]: 12: Hoare triple {1385#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 100 then 1 else 0)); {1385#true} is VALID [2022-04-15 15:39:46,936 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:46,937 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:46,937 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:46,938 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) 100)} is VALID [2022-04-15 15:39:46,938 INFO L272 TraceCheckUtils]: 17: Hoare triple {1440#(<= (mod main_~B~0 4294967296) 100)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {1385#true} is VALID [2022-04-15 15:39:46,938 INFO L290 TraceCheckUtils]: 18: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:46,938 INFO L290 TraceCheckUtils]: 19: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:46,939 INFO L290 TraceCheckUtils]: 20: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:46,939 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1385#true} {1440#(<= (mod main_~B~0 4294967296) 100)} #85#return; {1440#(<= (mod main_~B~0 4294967296) 100)} is VALID [2022-04-15 15:39:46,940 INFO L290 TraceCheckUtils]: 22: Hoare triple {1440#(<= (mod main_~B~0 4294967296) 100)} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {1459#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0))} is VALID [2022-04-15 15:39:46,940 INFO L290 TraceCheckUtils]: 23: Hoare triple {1459#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0))} assume !false; {1459#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0))} is VALID [2022-04-15 15:39:46,941 INFO L272 TraceCheckUtils]: 24: Hoare triple {1459#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100) (= 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:46,941 INFO L290 TraceCheckUtils]: 25: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:46,941 INFO L290 TraceCheckUtils]: 26: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:46,941 INFO L290 TraceCheckUtils]: 27: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:46,942 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1385#true} {1459#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0))} #87#return; {1459#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0))} is VALID [2022-04-15 15:39:46,942 INFO L272 TraceCheckUtils]: 29: Hoare triple {1459#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100) (= 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:46,942 INFO L290 TraceCheckUtils]: 30: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:46,942 INFO L290 TraceCheckUtils]: 31: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:46,942 INFO L290 TraceCheckUtils]: 32: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:46,943 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1385#true} {1459#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0))} #89#return; {1459#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0))} is VALID [2022-04-15 15:39:46,943 INFO L272 TraceCheckUtils]: 34: Hoare triple {1459#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100) (= 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:46,943 INFO L290 TraceCheckUtils]: 35: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:46,943 INFO L290 TraceCheckUtils]: 36: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:46,944 INFO L290 TraceCheckUtils]: 37: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:46,944 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1385#true} {1459#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0))} #91#return; {1459#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0))} is VALID [2022-04-15 15:39:46,945 INFO L290 TraceCheckUtils]: 39: Hoare triple {1459#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0))} assume !(~r~0 % 4294967296 >= ~d~0 % 4294967296); {1511#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~B~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100))} is VALID [2022-04-15 15:39:46,946 INFO L290 TraceCheckUtils]: 40: Hoare triple {1511#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~B~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100))} assume !false; {1511#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~B~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100))} is VALID [2022-04-15 15:39:46,947 INFO L272 TraceCheckUtils]: 41: Hoare triple {1511#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~B~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) 100))} 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:46,947 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:46,948 INFO L290 TraceCheckUtils]: 43: Hoare triple {1522#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1386#false} is VALID [2022-04-15 15:39:46,948 INFO L290 TraceCheckUtils]: 44: Hoare triple {1386#false} assume !false; {1386#false} is VALID [2022-04-15 15:39:46,948 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:46,948 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:39:47,567 INFO L290 TraceCheckUtils]: 44: Hoare triple {1386#false} assume !false; {1386#false} is VALID [2022-04-15 15:39:47,568 INFO L290 TraceCheckUtils]: 43: Hoare triple {1522#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1386#false} is VALID [2022-04-15 15:39:47,569 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:47,569 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:47,570 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:47,571 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:47,572 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:47,572 INFO L290 TraceCheckUtils]: 37: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:47,573 INFO L290 TraceCheckUtils]: 36: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:47,573 INFO L290 TraceCheckUtils]: 35: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:47,573 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:47,574 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:47,574 INFO L290 TraceCheckUtils]: 32: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:47,575 INFO L290 TraceCheckUtils]: 31: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:47,575 INFO L290 TraceCheckUtils]: 30: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:47,575 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:47,576 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:47,576 INFO L290 TraceCheckUtils]: 27: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:47,576 INFO L290 TraceCheckUtils]: 26: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:47,576 INFO L290 TraceCheckUtils]: 25: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:47,576 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:47,582 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:47,583 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:47,583 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1385#true} {1385#true} #85#return; {1385#true} is VALID [2022-04-15 15:39:47,583 INFO L290 TraceCheckUtils]: 20: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:47,583 INFO L290 TraceCheckUtils]: 19: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:47,583 INFO L290 TraceCheckUtils]: 18: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:47,584 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:47,584 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1385#true} {1385#true} #83#return; {1385#true} is VALID [2022-04-15 15:39:47,584 INFO L290 TraceCheckUtils]: 15: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:47,584 INFO L290 TraceCheckUtils]: 14: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:47,584 INFO L290 TraceCheckUtils]: 13: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:47,584 INFO L272 TraceCheckUtils]: 12: Hoare triple {1385#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 100 then 1 else 0)); {1385#true} is VALID [2022-04-15 15:39:47,584 INFO L290 TraceCheckUtils]: 11: Hoare triple {1385#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {1385#true} is VALID [2022-04-15 15:39:47,585 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1385#true} {1385#true} #81#return; {1385#true} is VALID [2022-04-15 15:39:47,585 INFO L290 TraceCheckUtils]: 9: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:47,585 INFO L290 TraceCheckUtils]: 8: Hoare triple {1385#true} assume !(0 == ~cond); {1385#true} is VALID [2022-04-15 15:39:47,585 INFO L290 TraceCheckUtils]: 7: Hoare triple {1385#true} ~cond := #in~cond; {1385#true} is VALID [2022-04-15 15:39:47,585 INFO L272 TraceCheckUtils]: 6: Hoare triple {1385#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 100 then 1 else 0)); {1385#true} is VALID [2022-04-15 15:39:47,585 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:47,585 INFO L272 TraceCheckUtils]: 4: Hoare triple {1385#true} call #t~ret6 := main(); {1385#true} is VALID [2022-04-15 15:39:47,585 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1385#true} {1385#true} #101#return; {1385#true} is VALID [2022-04-15 15:39:47,586 INFO L290 TraceCheckUtils]: 2: Hoare triple {1385#true} assume true; {1385#true} is VALID [2022-04-15 15:39:47,586 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:47,586 INFO L272 TraceCheckUtils]: 0: Hoare triple {1385#true} call ULTIMATE.init(); {1385#true} is VALID [2022-04-15 15:39:47,586 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:47,586 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:39:47,586 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [569019435] [2022-04-15 15:39:47,587 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:39:47,587 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1864133671] [2022-04-15 15:39:47,587 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1864133671] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 15:39:47,587 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 15:39:47,587 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-15 15:39:47,587 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:39:47,587 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [111678915] [2022-04-15 15:39:47,587 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [111678915] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:47,588 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:47,588 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:39:47,588 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [317653188] [2022-04-15 15:39:47,588 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:39:47,588 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:47,589 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:39:47,589 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:47,631 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:47,631 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 15:39:47,631 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:47,632 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 15:39:47,632 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-15 15:39:47,632 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:50,211 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:50,382 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:50,382 INFO L93 Difference]: Finished difference Result 68 states and 86 transitions. [2022-04-15 15:39:50,382 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 15:39:50,382 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,383 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:39:50,383 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:50,385 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-15 15:39:50,386 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:50,387 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-15 15:39:50,387 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-04-15 15:39:50,464 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:50,466 INFO L225 Difference]: With dead ends: 68 [2022-04-15 15:39:50,466 INFO L226 Difference]: Without dead ends: 66 [2022-04-15 15:39:50,466 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:50,467 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.3s IncrementalHoareTripleChecker+Time [2022-04-15 15:39:50,467 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.3s Time] [2022-04-15 15:39:50,468 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2022-04-15 15:39:50,494 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 64. [2022-04-15 15:39:50,494 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:39:50,494 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:50,496 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:50,499 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:50,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:50,503 INFO L93 Difference]: Finished difference Result 66 states and 84 transitions. [2022-04-15 15:39:50,503 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 84 transitions. [2022-04-15 15:39:50,504 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:50,505 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:50,506 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:50,507 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:50,511 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:39:50,512 INFO L93 Difference]: Finished difference Result 66 states and 84 transitions. [2022-04-15 15:39:50,512 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 84 transitions. [2022-04-15 15:39:50,512 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:39:50,512 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:39:50,512 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:39:50,512 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:39:50,513 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:50,519 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 81 transitions. [2022-04-15 15:39:50,519 INFO L78 Accepts]: Start accepts. Automaton has 64 states and 81 transitions. Word has length 45 [2022-04-15 15:39:50,520 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:39:50,520 INFO L478 AbstractCegarLoop]: Abstraction has 64 states and 81 transitions. [2022-04-15 15:39:50,520 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:50,520 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 64 states and 81 transitions. [2022-04-15 15:39:50,629 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:50,629 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 81 transitions. [2022-04-15 15:39:50,630 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-15 15:39:50,630 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:39:50,630 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:50,656 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-15 15:39:50,842 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:50,842 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:39:50,842 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:39:50,843 INFO L85 PathProgramCache]: Analyzing trace with hash -1471734606, now seen corresponding path program 1 times [2022-04-15 15:39:50,843 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:50,843 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [771410037] [2022-04-15 15:39:50,843 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:39:50,843 INFO L85 PathProgramCache]: Analyzing trace with hash -1471734606, now seen corresponding path program 2 times [2022-04-15 15:39:50,843 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:39:50,844 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [553972075] [2022-04-15 15:39:50,844 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:39:50,844 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:39:50,862 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:39:50,862 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1150006919] [2022-04-15 15:39:50,862 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:39:50,862 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:39:50,862 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:39:50,876 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:50,877 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:51,005 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:39:51,005 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:39:51,009 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-15 15:39:51,027 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:39:51,028 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:39:54,606 INFO L272 TraceCheckUtils]: 0: Hoare triple {2063#true} call ULTIMATE.init(); {2063#true} is VALID [2022-04-15 15:39:54,607 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:54,607 INFO L290 TraceCheckUtils]: 2: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:54,607 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2063#true} {2063#true} #101#return; {2063#true} is VALID [2022-04-15 15:39:54,607 INFO L272 TraceCheckUtils]: 4: Hoare triple {2063#true} call #t~ret6 := main(); {2063#true} is VALID [2022-04-15 15:39:54,607 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:54,607 INFO L272 TraceCheckUtils]: 6: Hoare triple {2063#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 100 then 1 else 0)); {2063#true} is VALID [2022-04-15 15:39:54,608 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:54,608 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:54,609 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:54,609 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) 100)} is VALID [2022-04-15 15:39:54,610 INFO L290 TraceCheckUtils]: 11: Hoare triple {2100#(<= (mod main_~A~0 4294967296) 100)} ~B~0 := #t~nondet5;havoc #t~nondet5; {2100#(<= (mod main_~A~0 4294967296) 100)} is VALID [2022-04-15 15:39:54,610 INFO L272 TraceCheckUtils]: 12: Hoare triple {2100#(<= (mod main_~A~0 4294967296) 100)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 100 then 1 else 0)); {2063#true} is VALID [2022-04-15 15:39:54,610 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:54,611 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:54,611 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:54,612 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2093#(not (= |assume_abort_if_not_#in~cond| 0))} {2100#(<= (mod main_~A~0 4294967296) 100)} #83#return; {2119#(and (<= (mod main_~A~0 4294967296) 100) (<= (mod main_~B~0 4294967296) 100))} is VALID [2022-04-15 15:39:54,612 INFO L272 TraceCheckUtils]: 17: Hoare triple {2119#(and (<= (mod main_~A~0 4294967296) 100) (<= (mod main_~B~0 4294967296) 100))} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2063#true} is VALID [2022-04-15 15:39:54,612 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:54,613 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:54,613 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:54,614 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2093#(not (= |assume_abort_if_not_#in~cond| 0))} {2119#(and (<= (mod main_~A~0 4294967296) 100) (<= (mod main_~B~0 4294967296) 100))} #85#return; {2135#(and (<= (mod main_~A~0 4294967296) 100) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100))} is VALID [2022-04-15 15:39:54,614 INFO L290 TraceCheckUtils]: 22: Hoare triple {2135#(and (<= (mod main_~A~0 4294967296) 100) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100))} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {2139#(and (<= (mod main_~r~0 4294967296) 100) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-15 15:39:54,615 INFO L290 TraceCheckUtils]: 23: Hoare triple {2139#(and (<= (mod main_~r~0 4294967296) 100) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0) (= main_~p~0 1))} assume !false; {2139#(and (<= (mod main_~r~0 4294967296) 100) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-15 15:39:54,615 INFO L272 TraceCheckUtils]: 24: Hoare triple {2139#(and (<= (mod main_~r~0 4294967296) 100) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100) (= 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:54,615 INFO L290 TraceCheckUtils]: 25: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:54,615 INFO L290 TraceCheckUtils]: 26: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:54,615 INFO L290 TraceCheckUtils]: 27: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:54,616 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2063#true} {2139#(and (<= (mod main_~r~0 4294967296) 100) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0) (= main_~p~0 1))} #87#return; {2139#(and (<= (mod main_~r~0 4294967296) 100) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-15 15:39:54,616 INFO L272 TraceCheckUtils]: 29: Hoare triple {2139#(and (<= (mod main_~r~0 4294967296) 100) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100) (= 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:54,616 INFO L290 TraceCheckUtils]: 30: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:54,616 INFO L290 TraceCheckUtils]: 31: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:54,616 INFO L290 TraceCheckUtils]: 32: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:54,617 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2063#true} {2139#(and (<= (mod main_~r~0 4294967296) 100) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0) (= main_~p~0 1))} #89#return; {2139#(and (<= (mod main_~r~0 4294967296) 100) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-15 15:39:54,617 INFO L272 TraceCheckUtils]: 34: Hoare triple {2139#(and (<= (mod main_~r~0 4294967296) 100) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100) (= 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:54,617 INFO L290 TraceCheckUtils]: 35: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:54,617 INFO L290 TraceCheckUtils]: 36: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:54,618 INFO L290 TraceCheckUtils]: 37: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:54,620 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2063#true} {2139#(and (<= (mod main_~r~0 4294967296) 100) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0) (= main_~p~0 1))} #91#return; {2139#(and (<= (mod main_~r~0 4294967296) 100) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100) (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-15 15:39:54,621 INFO L290 TraceCheckUtils]: 39: Hoare triple {2139#(and (<= (mod main_~r~0 4294967296) 100) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100) (= 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) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100))} is VALID [2022-04-15 15:39:54,621 INFO L290 TraceCheckUtils]: 40: Hoare triple {2191#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100))} assume !false; {2191#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100))} is VALID [2022-04-15 15:39:54,622 INFO L272 TraceCheckUtils]: 41: Hoare triple {2191#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {2063#true} is VALID [2022-04-15 15:39:54,622 INFO L290 TraceCheckUtils]: 42: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:54,622 INFO L290 TraceCheckUtils]: 43: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:54,622 INFO L290 TraceCheckUtils]: 44: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:54,623 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2063#true} {2191#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100))} #87#return; {2191#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100))} is VALID [2022-04-15 15:39:54,623 INFO L272 TraceCheckUtils]: 46: Hoare triple {2191#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {2063#true} is VALID [2022-04-15 15:39:54,623 INFO L290 TraceCheckUtils]: 47: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:54,623 INFO L290 TraceCheckUtils]: 48: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:54,623 INFO L290 TraceCheckUtils]: 49: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:54,624 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2063#true} {2191#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100))} #89#return; {2191#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100))} is VALID [2022-04-15 15:39:54,639 INFO L272 TraceCheckUtils]: 51: Hoare triple {2191#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)) (<= (mod main_~B~0 4294967296) 100))} 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:54,639 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:54,640 INFO L290 TraceCheckUtils]: 53: Hoare triple {2232#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2064#false} is VALID [2022-04-15 15:39:54,640 INFO L290 TraceCheckUtils]: 54: Hoare triple {2064#false} assume !false; {2064#false} is VALID [2022-04-15 15:39:54,640 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:54,640 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:39:55,821 INFO L290 TraceCheckUtils]: 54: Hoare triple {2064#false} assume !false; {2064#false} is VALID [2022-04-15 15:39:55,822 INFO L290 TraceCheckUtils]: 53: Hoare triple {2232#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2064#false} is VALID [2022-04-15 15:39:55,823 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:55,823 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:55,824 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:55,824 INFO L290 TraceCheckUtils]: 49: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:55,824 INFO L290 TraceCheckUtils]: 48: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:55,824 INFO L290 TraceCheckUtils]: 47: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:55,824 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:55,825 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:55,825 INFO L290 TraceCheckUtils]: 44: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:55,825 INFO L290 TraceCheckUtils]: 43: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:55,825 INFO L290 TraceCheckUtils]: 42: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:55,825 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:55,828 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:57,832 WARN L290 TraceCheckUtils]: 39: Hoare triple {2285#(or (= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296)) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))))} assume !!(~r~0 % 4294967296 >= ~d~0 % 4294967296);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {2248#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} is UNKNOWN [2022-04-15 15:39:57,833 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:57,833 INFO L290 TraceCheckUtils]: 37: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:57,834 INFO L290 TraceCheckUtils]: 36: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:57,834 INFO L290 TraceCheckUtils]: 35: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:57,834 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:57,834 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:57,834 INFO L290 TraceCheckUtils]: 32: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:57,834 INFO L290 TraceCheckUtils]: 31: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:57,834 INFO L290 TraceCheckUtils]: 30: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:57,835 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:57,835 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:57,835 INFO L290 TraceCheckUtils]: 27: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:57,835 INFO L290 TraceCheckUtils]: 26: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:57,835 INFO L290 TraceCheckUtils]: 25: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:57,835 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:57,836 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:57,836 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:57,836 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2063#true} {2063#true} #85#return; {2063#true} is VALID [2022-04-15 15:39:57,836 INFO L290 TraceCheckUtils]: 20: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:57,836 INFO L290 TraceCheckUtils]: 19: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:57,836 INFO L290 TraceCheckUtils]: 18: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:57,837 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:57,837 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2063#true} {2063#true} #83#return; {2063#true} is VALID [2022-04-15 15:39:57,837 INFO L290 TraceCheckUtils]: 15: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:57,837 INFO L290 TraceCheckUtils]: 14: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:57,837 INFO L290 TraceCheckUtils]: 13: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:57,837 INFO L272 TraceCheckUtils]: 12: Hoare triple {2063#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 100 then 1 else 0)); {2063#true} is VALID [2022-04-15 15:39:57,837 INFO L290 TraceCheckUtils]: 11: Hoare triple {2063#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2063#true} is VALID [2022-04-15 15:39:57,837 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2063#true} {2063#true} #81#return; {2063#true} is VALID [2022-04-15 15:39:57,837 INFO L290 TraceCheckUtils]: 9: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:57,837 INFO L290 TraceCheckUtils]: 8: Hoare triple {2063#true} assume !(0 == ~cond); {2063#true} is VALID [2022-04-15 15:39:57,837 INFO L290 TraceCheckUtils]: 7: Hoare triple {2063#true} ~cond := #in~cond; {2063#true} is VALID [2022-04-15 15:39:57,838 INFO L272 TraceCheckUtils]: 6: Hoare triple {2063#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 100 then 1 else 0)); {2063#true} is VALID [2022-04-15 15:39:57,838 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:57,838 INFO L272 TraceCheckUtils]: 4: Hoare triple {2063#true} call #t~ret6 := main(); {2063#true} is VALID [2022-04-15 15:39:57,838 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2063#true} {2063#true} #101#return; {2063#true} is VALID [2022-04-15 15:39:57,838 INFO L290 TraceCheckUtils]: 2: Hoare triple {2063#true} assume true; {2063#true} is VALID [2022-04-15 15:39:57,838 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:57,838 INFO L272 TraceCheckUtils]: 0: Hoare triple {2063#true} call ULTIMATE.init(); {2063#true} is VALID [2022-04-15 15:39:57,839 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:57,839 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:39:57,839 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [553972075] [2022-04-15 15:39:57,839 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:39:57,839 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1150006919] [2022-04-15 15:39:57,839 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1150006919] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 15:39:57,839 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 15:39:57,839 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [11] total 13 [2022-04-15 15:39:57,840 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:39:57,840 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [771410037] [2022-04-15 15:39:57,840 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [771410037] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:39:57,840 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:39:57,840 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:39:57,840 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [354346638] [2022-04-15 15:39:57,840 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:39:57,841 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:57,841 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:39:57,841 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:39:59,886 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:39:59,886 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 15:39:59,886 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:39:59,886 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 15:39:59,887 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-15 15:39:59,887 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:05,891 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:08,500 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:10,639 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.14s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 15:40:12,774 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.13s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 15:40:14,901 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.13s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 15:40:18,234 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,372 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.14s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 15:40:22,519 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.15s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 15:40:24,660 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.14s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 15:40:25,667 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:40:25,668 INFO L93 Difference]: Finished difference Result 82 states and 106 transitions. [2022-04-15 15:40:25,668 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 15:40:25,668 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:25,668 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:40:25,668 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:25,670 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 68 transitions. [2022-04-15 15:40:25,671 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:25,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 68 transitions. [2022-04-15 15:40:25,672 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 68 transitions. [2022-04-15 15:40:27,757 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:27,760 INFO L225 Difference]: With dead ends: 82 [2022-04-15 15:40:27,761 INFO L226 Difference]: Without dead ends: 80 [2022-04-15 15:40:27,761 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:27,761 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 10 mSDsluCounter, 118 mSDsCounter, 0 mSdLazyCounter, 70 mSolverCounterSat, 3 mSolverCounterUnsat, 9 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 19.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 163 SdHoareTripleChecker+Invalid, 82 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 70 IncrementalHoareTripleChecker+Invalid, 9 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 20.1s IncrementalHoareTripleChecker+Time [2022-04-15 15:40:27,762 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 163 Invalid, 82 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 70 Invalid, 9 Unknown, 0 Unchecked, 20.1s Time] [2022-04-15 15:40:27,762 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 80 states. [2022-04-15 15:40:27,787 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 80 to 71. [2022-04-15 15:40:27,788 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:40:27,788 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:27,788 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:27,789 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:27,792 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:40:27,792 INFO L93 Difference]: Finished difference Result 80 states and 104 transitions. [2022-04-15 15:40:27,792 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 104 transitions. [2022-04-15 15:40:27,793 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:40:27,793 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:40:27,793 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:27,793 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:27,797 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:40:27,797 INFO L93 Difference]: Finished difference Result 80 states and 104 transitions. [2022-04-15 15:40:27,797 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 104 transitions. [2022-04-15 15:40:27,797 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:40:27,798 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:40:27,798 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:40:27,798 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:40:27,798 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:27,801 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 89 transitions. [2022-04-15 15:40:27,801 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 89 transitions. Word has length 55 [2022-04-15 15:40:27,801 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:40:27,801 INFO L478 AbstractCegarLoop]: Abstraction has 71 states and 89 transitions. [2022-04-15 15:40:27,802 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:27,802 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 71 states and 89 transitions. [2022-04-15 15:40:30,681 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:30,681 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 89 transitions. [2022-04-15 15:40:30,682 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-15 15:40:30,682 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:40:30,682 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:30,687 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:30,882 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:30,883 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:40:30,883 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:40:30,883 INFO L85 PathProgramCache]: Analyzing trace with hash -682689219, now seen corresponding path program 1 times [2022-04-15 15:40:30,883 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:40:30,883 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [334539219] [2022-04-15 15:40:30,884 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:40:30,884 INFO L85 PathProgramCache]: Analyzing trace with hash -682689219, now seen corresponding path program 2 times [2022-04-15 15:40:30,884 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:40:30,884 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [39802146] [2022-04-15 15:40:30,884 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:40:30,884 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:40:30,898 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:40:30,898 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1575793683] [2022-04-15 15:40:30,898 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:40:30,898 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:40:30,898 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:40:30,899 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:30,901 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:30,964 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:40:30,964 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:40:30,965 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-15 15:40:30,978 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:40:30,979 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:40:33,189 INFO L272 TraceCheckUtils]: 0: Hoare triple {2873#true} call ULTIMATE.init(); {2873#true} is VALID [2022-04-15 15:40:33,189 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:33,189 INFO L290 TraceCheckUtils]: 2: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:33,189 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2873#true} {2873#true} #101#return; {2873#true} is VALID [2022-04-15 15:40:33,190 INFO L272 TraceCheckUtils]: 4: Hoare triple {2873#true} call #t~ret6 := main(); {2873#true} is VALID [2022-04-15 15:40:33,190 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:33,190 INFO L272 TraceCheckUtils]: 6: Hoare triple {2873#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 100 then 1 else 0)); {2873#true} is VALID [2022-04-15 15:40:33,190 INFO L290 TraceCheckUtils]: 7: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:33,190 INFO L290 TraceCheckUtils]: 8: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:33,190 INFO L290 TraceCheckUtils]: 9: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:33,190 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2873#true} {2873#true} #81#return; {2873#true} is VALID [2022-04-15 15:40:33,190 INFO L290 TraceCheckUtils]: 11: Hoare triple {2873#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2873#true} is VALID [2022-04-15 15:40:33,190 INFO L272 TraceCheckUtils]: 12: Hoare triple {2873#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 100 then 1 else 0)); {2873#true} is VALID [2022-04-15 15:40:33,194 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:33,194 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:33,194 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:33,195 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) 100)} is VALID [2022-04-15 15:40:33,195 INFO L272 TraceCheckUtils]: 17: Hoare triple {2928#(<= (mod main_~B~0 4294967296) 100)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2873#true} is VALID [2022-04-15 15:40:33,195 INFO L290 TraceCheckUtils]: 18: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:33,195 INFO L290 TraceCheckUtils]: 19: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:33,196 INFO L290 TraceCheckUtils]: 20: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:33,200 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2873#true} {2928#(<= (mod main_~B~0 4294967296) 100)} #85#return; {2928#(<= (mod main_~B~0 4294967296) 100)} is VALID [2022-04-15 15:40:33,200 INFO L290 TraceCheckUtils]: 22: Hoare triple {2928#(<= (mod main_~B~0 4294967296) 100)} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {2947#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 15:40:33,201 INFO L290 TraceCheckUtils]: 23: Hoare triple {2947#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (= main_~q~0 0))} assume !false; {2947#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 15:40:33,201 INFO L272 TraceCheckUtils]: 24: Hoare triple {2947#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {2873#true} is VALID [2022-04-15 15:40:33,201 INFO L290 TraceCheckUtils]: 25: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:33,201 INFO L290 TraceCheckUtils]: 26: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:33,201 INFO L290 TraceCheckUtils]: 27: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:33,201 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2873#true} {2947#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (= main_~q~0 0))} #87#return; {2947#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 15:40:33,202 INFO L272 TraceCheckUtils]: 29: Hoare triple {2947#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {2873#true} is VALID [2022-04-15 15:40:33,202 INFO L290 TraceCheckUtils]: 30: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:33,202 INFO L290 TraceCheckUtils]: 31: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:33,202 INFO L290 TraceCheckUtils]: 32: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:33,202 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2873#true} {2947#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (= main_~q~0 0))} #89#return; {2947#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 15:40:33,203 INFO L272 TraceCheckUtils]: 34: Hoare triple {2947#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (= main_~q~0 0))} 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:33,203 INFO L290 TraceCheckUtils]: 35: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:33,203 INFO L290 TraceCheckUtils]: 36: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:33,203 INFO L290 TraceCheckUtils]: 37: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:33,204 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2873#true} {2947#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (= main_~q~0 0))} #91#return; {2947#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 15:40:33,204 INFO L290 TraceCheckUtils]: 39: Hoare triple {2947#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (= main_~q~0 0))} assume !(~r~0 % 4294967296 >= ~d~0 % 4294967296); {2999#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} is VALID [2022-04-15 15:40:33,204 INFO L290 TraceCheckUtils]: 40: Hoare triple {2999#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} assume !false; {2999#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} is VALID [2022-04-15 15:40:33,205 INFO L272 TraceCheckUtils]: 41: Hoare triple {2999#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (not (<= (mod main_~d~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)); {2873#true} is VALID [2022-04-15 15:40:33,205 INFO L290 TraceCheckUtils]: 42: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:33,205 INFO L290 TraceCheckUtils]: 43: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:33,205 INFO L290 TraceCheckUtils]: 44: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:33,205 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2873#true} {2999#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} #93#return; {2999#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} is VALID [2022-04-15 15:40:33,206 INFO L272 TraceCheckUtils]: 46: Hoare triple {2999#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} 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:33,206 INFO L290 TraceCheckUtils]: 47: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:33,206 INFO L290 TraceCheckUtils]: 48: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:33,206 INFO L290 TraceCheckUtils]: 49: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:33,207 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2873#true} {2999#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} #95#return; {2999#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} is VALID [2022-04-15 15:40:33,207 INFO L290 TraceCheckUtils]: 51: Hoare triple {2999#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} assume !(1 != ~p~0 % 4294967296); {2999#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} is VALID [2022-04-15 15:40:33,208 INFO L272 TraceCheckUtils]: 52: Hoare triple {2999#(and (<= (mod main_~d~0 4294967296) 100) (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} 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:33,208 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:33,209 INFO L290 TraceCheckUtils]: 54: Hoare triple {3043#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2874#false} is VALID [2022-04-15 15:40:33,209 INFO L290 TraceCheckUtils]: 55: Hoare triple {2874#false} assume !false; {2874#false} is VALID [2022-04-15 15:40:33,209 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:33,209 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:40:34,572 INFO L290 TraceCheckUtils]: 55: Hoare triple {2874#false} assume !false; {2874#false} is VALID [2022-04-15 15:40:34,572 INFO L290 TraceCheckUtils]: 54: Hoare triple {3043#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2874#false} is VALID [2022-04-15 15:40:34,573 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:34,573 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:34,574 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:34,574 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:34,575 INFO L290 TraceCheckUtils]: 49: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:34,575 INFO L290 TraceCheckUtils]: 48: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:34,575 INFO L290 TraceCheckUtils]: 47: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:34,575 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:34,580 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:34,580 INFO L290 TraceCheckUtils]: 44: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:34,580 INFO L290 TraceCheckUtils]: 43: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:34,580 INFO L290 TraceCheckUtils]: 42: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:34,580 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:34,580 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:34,581 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:34,582 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:34,582 INFO L290 TraceCheckUtils]: 37: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:34,582 INFO L290 TraceCheckUtils]: 36: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:34,582 INFO L290 TraceCheckUtils]: 35: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:34,582 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:34,583 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:34,583 INFO L290 TraceCheckUtils]: 32: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:34,583 INFO L290 TraceCheckUtils]: 31: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:34,583 INFO L290 TraceCheckUtils]: 30: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:34,583 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:34,584 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:34,584 INFO L290 TraceCheckUtils]: 27: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:34,584 INFO L290 TraceCheckUtils]: 26: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:34,584 INFO L290 TraceCheckUtils]: 25: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:34,584 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:34,585 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:34,585 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:34,585 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2873#true} {2873#true} #85#return; {2873#true} is VALID [2022-04-15 15:40:34,585 INFO L290 TraceCheckUtils]: 20: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:34,585 INFO L290 TraceCheckUtils]: 19: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:34,586 INFO L290 TraceCheckUtils]: 18: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:34,586 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:34,586 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2873#true} {2873#true} #83#return; {2873#true} is VALID [2022-04-15 15:40:34,586 INFO L290 TraceCheckUtils]: 15: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:34,586 INFO L290 TraceCheckUtils]: 14: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:34,586 INFO L290 TraceCheckUtils]: 13: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:34,586 INFO L272 TraceCheckUtils]: 12: Hoare triple {2873#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 100 then 1 else 0)); {2873#true} is VALID [2022-04-15 15:40:34,586 INFO L290 TraceCheckUtils]: 11: Hoare triple {2873#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2873#true} is VALID [2022-04-15 15:40:34,586 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2873#true} {2873#true} #81#return; {2873#true} is VALID [2022-04-15 15:40:34,587 INFO L290 TraceCheckUtils]: 9: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:34,587 INFO L290 TraceCheckUtils]: 8: Hoare triple {2873#true} assume !(0 == ~cond); {2873#true} is VALID [2022-04-15 15:40:34,587 INFO L290 TraceCheckUtils]: 7: Hoare triple {2873#true} ~cond := #in~cond; {2873#true} is VALID [2022-04-15 15:40:34,587 INFO L272 TraceCheckUtils]: 6: Hoare triple {2873#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 100 then 1 else 0)); {2873#true} is VALID [2022-04-15 15:40:34,587 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:34,587 INFO L272 TraceCheckUtils]: 4: Hoare triple {2873#true} call #t~ret6 := main(); {2873#true} is VALID [2022-04-15 15:40:34,587 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2873#true} {2873#true} #101#return; {2873#true} is VALID [2022-04-15 15:40:34,587 INFO L290 TraceCheckUtils]: 2: Hoare triple {2873#true} assume true; {2873#true} is VALID [2022-04-15 15:40:34,587 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:34,587 INFO L272 TraceCheckUtils]: 0: Hoare triple {2873#true} call ULTIMATE.init(); {2873#true} is VALID [2022-04-15 15:40:34,589 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:34,589 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:40:34,589 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [39802146] [2022-04-15 15:40:34,589 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:40:34,589 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1575793683] [2022-04-15 15:40:34,589 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1575793683] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 15:40:34,589 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 15:40:34,590 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-15 15:40:34,590 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:40:34,590 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [334539219] [2022-04-15 15:40:34,590 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [334539219] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:40:34,590 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:40:34,590 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:40:34,590 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1317498562] [2022-04-15 15:40:34,590 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:40:34,591 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:34,592 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:40:34,592 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:34,626 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:34,626 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 15:40:34,626 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:40:34,627 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 15:40:34,627 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-15 15:40:34,627 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:39,821 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:41,928 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:42,626 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:40:42,626 INFO L93 Difference]: Finished difference Result 77 states and 94 transitions. [2022-04-15 15:40:42,626 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 15:40:42,626 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:42,627 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:40:42,627 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:42,628 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-15 15:40:42,628 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:42,630 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-15 15:40:42,630 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-15 15:40:42,701 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:42,702 INFO L225 Difference]: With dead ends: 77 [2022-04-15 15:40:42,703 INFO L226 Difference]: Without dead ends: 70 [2022-04-15 15:40:42,703 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:42,703 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 9 mSDsluCounter, 102 mSDsCounter, 0 mSdLazyCounter, 42 mSolverCounterSat, 3 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 5.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 148 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 42 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 5.5s IncrementalHoareTripleChecker+Time [2022-04-15 15:40:42,704 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 148 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 42 Invalid, 2 Unknown, 0 Unchecked, 5.5s Time] [2022-04-15 15:40:42,704 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-15 15:40:42,731 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2022-04-15 15:40:42,732 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:40:42,732 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:42,732 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:42,732 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:42,735 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:40:42,735 INFO L93 Difference]: Finished difference Result 70 states and 87 transitions. [2022-04-15 15:40:42,735 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 87 transitions. [2022-04-15 15:40:42,736 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:40:42,736 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:40:42,736 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:42,736 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:42,739 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:40:42,739 INFO L93 Difference]: Finished difference Result 70 states and 87 transitions. [2022-04-15 15:40:42,739 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 87 transitions. [2022-04-15 15:40:42,739 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:40:42,739 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:40:42,739 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:40:42,739 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:40:42,740 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:42,742 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 87 transitions. [2022-04-15 15:40:42,742 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 87 transitions. Word has length 56 [2022-04-15 15:40:42,742 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:40:42,742 INFO L478 AbstractCegarLoop]: Abstraction has 70 states and 87 transitions. [2022-04-15 15:40:42,743 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:42,743 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 70 states and 87 transitions. [2022-04-15 15:40:45,689 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:45,689 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 87 transitions. [2022-04-15 15:40:45,690 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-15 15:40:45,690 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:40:45,690 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:45,707 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:45,891 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:45,891 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:40:45,891 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:40:45,891 INFO L85 PathProgramCache]: Analyzing trace with hash 1586192473, now seen corresponding path program 1 times [2022-04-15 15:40:45,892 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:40:45,892 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [856356497] [2022-04-15 15:40:45,892 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:40:45,892 INFO L85 PathProgramCache]: Analyzing trace with hash 1586192473, now seen corresponding path program 2 times [2022-04-15 15:40:45,892 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:40:45,892 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1407806669] [2022-04-15 15:40:45,892 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:40:45,893 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:40:45,907 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:40:45,907 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [549977095] [2022-04-15 15:40:45,907 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:40:45,907 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:40:45,907 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:40:45,908 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:45,941 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process