/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/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/hard-u_valuebound5.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 13:39:46,947 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 13:39:46,949 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 13:39:46,985 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 13:39:46,985 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 13:39:46,986 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 13:39:46,989 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 13:39:46,991 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 13:39:46,992 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 13:39:46,997 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 13:39:46,997 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 13:39:46,998 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 13:39:46,999 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 13:39:47,002 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 13:39:47,002 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 13:39:47,004 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 13:39:47,004 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 13:39:47,005 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 13:39:47,006 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 13:39:47,007 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 13:39:47,008 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 13:39:47,008 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 13:39:47,009 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 13:39:47,009 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 13:39:47,010 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 13:39:47,011 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 13:39:47,012 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 13:39:47,012 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 13:39:47,012 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 13:39:47,012 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 13:39:47,013 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 13:39:47,013 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 13:39:47,013 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 13:39:47,014 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 13:39:47,014 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 13:39:47,015 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 13:39:47,015 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 13:39:47,015 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 13:39:47,015 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 13:39:47,016 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 13:39:47,016 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 13:39:47,023 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 13:39:47,024 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2022-04-27 13:39:47,042 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 13:39:47,043 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 13:39:47,043 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 13:39:47,043 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 13:39:47,043 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 13:39:47,044 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 13:39:47,044 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 13:39:47,044 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 13:39:47,044 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 13:39:47,045 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 13:39:47,045 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 13:39:47,045 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 13:39:47,045 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 13:39:47,045 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 13:39:47,045 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 13:39:47,045 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 13:39:47,045 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 13:39:47,046 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 13:39:47,046 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 13:39:47,046 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 13:39:47,046 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 13:39:47,047 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 13:39:47,047 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 13:39:47,047 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 13:39:47,047 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 13:39:47,047 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 13:39:47,047 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 13:39:47,047 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 13:39:47,047 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 13:39:47,047 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 13:39:47,048 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 13:39:47,048 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 13:39:47,048 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 13:39:47,048 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode 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-27 13:39:47,215 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 13:39:47,239 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 13:39:47,240 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 13:39:47,241 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 13:39:47,242 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 13:39:47,243 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/hard-u_valuebound5.c [2022-04-27 13:39:47,294 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/23882bbfb/5bd29b1181734b44977f30c51845c6a2/FLAG54c37d24e [2022-04-27 13:39:47,664 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 13:39:47,664 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/hard-u_valuebound5.c [2022-04-27 13:39:47,668 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/23882bbfb/5bd29b1181734b44977f30c51845c6a2/FLAG54c37d24e [2022-04-27 13:39:47,677 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/23882bbfb/5bd29b1181734b44977f30c51845c6a2 [2022-04-27 13:39:47,682 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 13:39:47,683 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 13:39:47,685 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 13:39:47,686 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 13:39:47,688 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 13:39:47,689 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 01:39:47" (1/1) ... [2022-04-27 13:39:47,689 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6e6d90fc and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:39:47, skipping insertion in model container [2022-04-27 13:39:47,689 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 01:39:47" (1/1) ... [2022-04-27 13:39:47,695 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 13:39:47,708 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 13:39:47,842 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_valuebound5.c[537,550] [2022-04-27 13:39:47,871 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 13:39:47,877 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 13:39:47,905 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_valuebound5.c[537,550] [2022-04-27 13:39:47,928 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 13:39:47,937 INFO L208 MainTranslator]: Completed translation [2022-04-27 13:39:47,937 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:39:47 WrapperNode [2022-04-27 13:39:47,937 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 13:39:47,938 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 13:39:47,938 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 13:39:47,938 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 13:39:47,961 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:39:47" (1/1) ... [2022-04-27 13:39:47,962 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:39:47" (1/1) ... [2022-04-27 13:39:47,966 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:39:47" (1/1) ... [2022-04-27 13:39:47,966 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:39:47" (1/1) ... [2022-04-27 13:39:47,970 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:39:47" (1/1) ... [2022-04-27 13:39:47,973 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:39:47" (1/1) ... [2022-04-27 13:39:47,974 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:39:47" (1/1) ... [2022-04-27 13:39:47,977 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 13:39:47,977 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 13:39:47,977 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 13:39:47,977 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 13:39:47,978 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:39:47" (1/1) ... [2022-04-27 13:39:47,983 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 13:39:47,995 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:39:48,012 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-27 13:39:48,015 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-27 13:39:48,046 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 13:39:48,046 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 13:39:48,046 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 13:39:48,047 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 13:39:48,047 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 13:39:48,047 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 13:39:48,047 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 13:39:48,047 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 13:39:48,047 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 13:39:48,047 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 13:39:48,047 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-27 13:39:48,047 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 13:39:48,047 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 13:39:48,047 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 13:39:48,047 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 13:39:48,047 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 13:39:48,047 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 13:39:48,048 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 13:39:48,048 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 13:39:48,048 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 13:39:48,089 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 13:39:48,091 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 13:39:48,284 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 13:39:48,289 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 13:39:48,289 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-27 13:39:48,290 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 01:39:48 BoogieIcfgContainer [2022-04-27 13:39:48,291 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 13:39:48,292 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 13:39:48,292 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 13:39:48,318 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 13:39:48,319 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 01:39:47" (1/3) ... [2022-04-27 13:39:48,319 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@68ab283 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 01:39:48, skipping insertion in model container [2022-04-27 13:39:48,319 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:39:47" (2/3) ... [2022-04-27 13:39:48,319 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@68ab283 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 01:39:48, skipping insertion in model container [2022-04-27 13:39:48,319 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 01:39:48" (3/3) ... [2022-04-27 13:39:48,320 INFO L111 eAbstractionObserver]: Analyzing ICFG hard-u_valuebound5.c [2022-04-27 13:39:48,330 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 13:39:48,330 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 13:39:48,379 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 13:39:48,383 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, 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, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@2bf0ae86, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@b7552f2 [2022-04-27 13:39:48,384 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 13:39:48,390 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-27 13:39:48,395 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-27 13:39:48,395 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:39:48,396 INFO L195 NwaCegarLoop]: 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-27 13:39:48,396 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:39:48,400 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:39:48,400 INFO L85 PathProgramCache]: Analyzing trace with hash -1784424332, now seen corresponding path program 1 times [2022-04-27 13:39:48,406 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:39:48,407 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1140249902] [2022-04-27 13:39:48,407 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:39:48,408 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:39:48,502 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:48,565 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 13:39:48,574 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:48,593 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-27 13:39:48,594 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-27 13:39:48,594 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {41#true} {41#true} #101#return; {41#true} is VALID [2022-04-27 13:39:48,595 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 13:39:48,599 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:48,605 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-27 13:39:48,606 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-27 13:39:48,606 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-27 13:39:48,606 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {41#true} #81#return; {42#false} is VALID [2022-04-27 13:39:48,607 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-27 13:39:48,611 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:48,628 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-27 13:39:48,629 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-27 13:39:48,630 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-27 13:39:48,630 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {42#false} #83#return; {42#false} is VALID [2022-04-27 13:39:48,630 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 13:39:48,631 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:48,641 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-27 13:39:48,643 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-27 13:39:48,643 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-27 13:39:48,643 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {42#false} #85#return; {42#false} is VALID [2022-04-27 13:39:48,644 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-27 13:39:48,644 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-27 13:39:48,645 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-27 13:39:48,645 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#true} {41#true} #101#return; {41#true} is VALID [2022-04-27 13:39:48,645 INFO L272 TraceCheckUtils]: 4: Hoare triple {41#true} call #t~ret6 := main(); {41#true} is VALID [2022-04-27 13:39:48,645 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-27 13:39:48,645 INFO L272 TraceCheckUtils]: 6: Hoare triple {41#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 5 then 1 else 0)); {41#true} is VALID [2022-04-27 13:39:48,645 INFO L290 TraceCheckUtils]: 7: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-27 13:39:48,646 INFO L290 TraceCheckUtils]: 8: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-27 13:39:48,646 INFO L290 TraceCheckUtils]: 9: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-27 13:39:48,646 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42#false} {41#true} #81#return; {42#false} is VALID [2022-04-27 13:39:48,646 INFO L290 TraceCheckUtils]: 11: Hoare triple {42#false} ~B~0 := #t~nondet5;havoc #t~nondet5; {42#false} is VALID [2022-04-27 13:39:48,646 INFO L272 TraceCheckUtils]: 12: Hoare triple {42#false} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 5 then 1 else 0)); {41#true} is VALID [2022-04-27 13:39:48,647 INFO L290 TraceCheckUtils]: 13: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-27 13:39:48,648 INFO L290 TraceCheckUtils]: 14: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-27 13:39:48,648 INFO L290 TraceCheckUtils]: 15: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-27 13:39:48,648 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {42#false} {42#false} #83#return; {42#false} is VALID [2022-04-27 13:39:48,649 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-27 13:39:48,649 INFO L290 TraceCheckUtils]: 18: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-27 13:39:48,650 INFO L290 TraceCheckUtils]: 19: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-27 13:39:48,650 INFO L290 TraceCheckUtils]: 20: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-27 13:39:48,650 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {42#false} {42#false} #85#return; {42#false} is VALID [2022-04-27 13:39:48,651 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-27 13:39:48,651 INFO L290 TraceCheckUtils]: 23: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-27 13:39:48,651 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-27 13:39:48,651 INFO L290 TraceCheckUtils]: 25: Hoare triple {42#false} ~cond := #in~cond; {42#false} is VALID [2022-04-27 13:39:48,651 INFO L290 TraceCheckUtils]: 26: Hoare triple {42#false} assume 0 == ~cond; {42#false} is VALID [2022-04-27 13:39:48,651 INFO L290 TraceCheckUtils]: 27: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-27 13:39:48,652 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-27 13:39:48,653 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:39:48,654 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1140249902] [2022-04-27 13:39:48,655 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1140249902] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:39:48,655 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:39:48,655 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 13:39:48,658 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [910016301] [2022-04-27 13:39:48,659 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:39:48,664 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-27 13:39:48,665 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:39:48,668 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-27 13:39:48,705 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-27 13:39:48,705 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 13:39:48,706 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:39:48,734 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 13:39:48,739 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 13:39:48,741 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-27 13:39:48,914 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:48,914 INFO L93 Difference]: Finished difference Result 69 states and 110 transitions. [2022-04-27 13:39:48,914 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 13:39:48,914 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-27 13:39:48,915 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:39:48,916 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-27 13:39:48,923 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-27 13:39:48,924 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-27 13:39:48,928 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-27 13:39:48,929 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 110 transitions. [2022-04-27 13:39:49,029 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-27 13:39:49,036 INFO L225 Difference]: With dead ends: 69 [2022-04-27 13:39:49,036 INFO L226 Difference]: Without dead ends: 33 [2022-04-27 13:39:49,038 INFO L412 NwaCegarLoop]: 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-27 13:39:49,040 INFO L413 NwaCegarLoop]: 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-27 13:39:49,041 INFO L414 NwaCegarLoop]: 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-27 13:39:49,052 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states. [2022-04-27 13:39:49,063 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 33. [2022-04-27 13:39:49,063 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:39:49,064 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-27 13:39:49,064 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-27 13:39:49,065 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-27 13:39:49,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:49,069 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-27 13:39:49,069 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-27 13:39:49,070 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:39:49,070 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:39:49,070 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-27 13:39:49,071 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-27 13:39:49,074 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:49,074 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-27 13:39:49,074 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-27 13:39:49,075 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:39:49,075 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:39:49,075 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:39:49,075 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:39:49,075 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-27 13:39:49,078 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 43 transitions. [2022-04-27 13:39:49,079 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 43 transitions. Word has length 28 [2022-04-27 13:39:49,079 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:39:49,079 INFO L495 AbstractCegarLoop]: Abstraction has 33 states and 43 transitions. [2022-04-27 13:39:49,080 INFO L496 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-27 13:39:49,080 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-27 13:39:49,081 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-27 13:39:49,081 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:39:49,081 INFO L195 NwaCegarLoop]: 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-27 13:39:49,081 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 13:39:49,081 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:39:49,082 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:39:49,082 INFO L85 PathProgramCache]: Analyzing trace with hash 1361835634, now seen corresponding path program 1 times [2022-04-27 13:39:49,082 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:39:49,082 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1729994160] [2022-04-27 13:39:49,082 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:39:49,083 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:39:49,115 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:49,164 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 13:39:49,166 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:49,170 INFO L290 TraceCheckUtils]: 0: Hoare triple {295#(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); {275#true} is VALID [2022-04-27 13:39:49,170 INFO L290 TraceCheckUtils]: 1: Hoare triple {275#true} assume true; {275#true} is VALID [2022-04-27 13:39:49,170 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {275#true} {275#true} #101#return; {275#true} is VALID [2022-04-27 13:39:49,171 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 13:39:49,172 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:49,175 INFO L290 TraceCheckUtils]: 0: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-04-27 13:39:49,175 INFO L290 TraceCheckUtils]: 1: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-04-27 13:39:49,175 INFO L290 TraceCheckUtils]: 2: Hoare triple {275#true} assume true; {275#true} is VALID [2022-04-27 13:39:49,176 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {275#true} {275#true} #81#return; {275#true} is VALID [2022-04-27 13:39:49,176 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-27 13:39:49,177 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:49,180 INFO L290 TraceCheckUtils]: 0: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-04-27 13:39:49,180 INFO L290 TraceCheckUtils]: 1: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-04-27 13:39:49,180 INFO L290 TraceCheckUtils]: 2: Hoare triple {275#true} assume true; {275#true} is VALID [2022-04-27 13:39:49,180 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {275#true} {275#true} #83#return; {275#true} is VALID [2022-04-27 13:39:49,180 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 13:39:49,195 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:49,199 INFO L290 TraceCheckUtils]: 0: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-04-27 13:39:49,199 INFO L290 TraceCheckUtils]: 1: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-04-27 13:39:49,199 INFO L290 TraceCheckUtils]: 2: Hoare triple {275#true} assume true; {275#true} is VALID [2022-04-27 13:39:49,200 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {275#true} {275#true} #85#return; {275#true} is VALID [2022-04-27 13:39:49,200 INFO L272 TraceCheckUtils]: 0: Hoare triple {275#true} call ULTIMATE.init(); {295#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 13:39:49,201 INFO L290 TraceCheckUtils]: 1: Hoare triple {295#(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); {275#true} is VALID [2022-04-27 13:39:49,201 INFO L290 TraceCheckUtils]: 2: Hoare triple {275#true} assume true; {275#true} is VALID [2022-04-27 13:39:49,201 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {275#true} {275#true} #101#return; {275#true} is VALID [2022-04-27 13:39:49,201 INFO L272 TraceCheckUtils]: 4: Hoare triple {275#true} call #t~ret6 := main(); {275#true} is VALID [2022-04-27 13:39:49,201 INFO L290 TraceCheckUtils]: 5: Hoare triple {275#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; {275#true} is VALID [2022-04-27 13:39:49,201 INFO L272 TraceCheckUtils]: 6: Hoare triple {275#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 5 then 1 else 0)); {275#true} is VALID [2022-04-27 13:39:49,201 INFO L290 TraceCheckUtils]: 7: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-04-27 13:39:49,201 INFO L290 TraceCheckUtils]: 8: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-04-27 13:39:49,201 INFO L290 TraceCheckUtils]: 9: Hoare triple {275#true} assume true; {275#true} is VALID [2022-04-27 13:39:49,202 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {275#true} {275#true} #81#return; {275#true} is VALID [2022-04-27 13:39:49,202 INFO L290 TraceCheckUtils]: 11: Hoare triple {275#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {275#true} is VALID [2022-04-27 13:39:49,202 INFO L272 TraceCheckUtils]: 12: Hoare triple {275#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 5 then 1 else 0)); {275#true} is VALID [2022-04-27 13:39:49,202 INFO L290 TraceCheckUtils]: 13: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-04-27 13:39:49,202 INFO L290 TraceCheckUtils]: 14: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-04-27 13:39:49,203 INFO L290 TraceCheckUtils]: 15: Hoare triple {275#true} assume true; {275#true} is VALID [2022-04-27 13:39:49,203 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {275#true} {275#true} #83#return; {275#true} is VALID [2022-04-27 13:39:49,203 INFO L272 TraceCheckUtils]: 17: Hoare triple {275#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {275#true} is VALID [2022-04-27 13:39:49,203 INFO L290 TraceCheckUtils]: 18: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-04-27 13:39:49,203 INFO L290 TraceCheckUtils]: 19: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-04-27 13:39:49,203 INFO L290 TraceCheckUtils]: 20: Hoare triple {275#true} assume true; {275#true} is VALID [2022-04-27 13:39:49,203 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {275#true} {275#true} #85#return; {275#true} is VALID [2022-04-27 13:39:49,204 INFO L290 TraceCheckUtils]: 22: Hoare triple {275#true} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {292#(= main_~q~0 0)} is VALID [2022-04-27 13:39:49,204 INFO L290 TraceCheckUtils]: 23: Hoare triple {292#(= main_~q~0 0)} assume !false; {292#(= main_~q~0 0)} is VALID [2022-04-27 13:39:49,205 INFO L272 TraceCheckUtils]: 24: Hoare triple {292#(= main_~q~0 0)} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {293#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:39:49,205 INFO L290 TraceCheckUtils]: 25: Hoare triple {293#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {294#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:39:49,205 INFO L290 TraceCheckUtils]: 26: Hoare triple {294#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {276#false} is VALID [2022-04-27 13:39:49,205 INFO L290 TraceCheckUtils]: 27: Hoare triple {276#false} assume !false; {276#false} is VALID [2022-04-27 13:39:49,206 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-27 13:39:49,206 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:39:49,206 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1729994160] [2022-04-27 13:39:49,206 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1729994160] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:39:49,206 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:39:49,206 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 13:39:49,206 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2031107704] [2022-04-27 13:39:49,207 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:39:49,208 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-27 13:39:49,208 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:39:49,208 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-27 13:39:49,223 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-27 13:39:49,223 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 13:39:49,223 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:39:49,224 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 13:39:49,224 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 13:39:49,224 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-27 13:39:49,632 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:49,632 INFO L93 Difference]: Finished difference Result 46 states and 60 transitions. [2022-04-27 13:39:49,632 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-27 13:39:49,632 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-27 13:39:49,632 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:39:49,633 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-27 13:39:49,635 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-27 13:39:49,635 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-27 13:39:49,637 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-27 13:39:49,637 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 60 transitions. [2022-04-27 13:39:49,703 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-27 13:39:49,705 INFO L225 Difference]: With dead ends: 46 [2022-04-27 13:39:49,706 INFO L226 Difference]: Without dead ends: 44 [2022-04-27 13:39:49,706 INFO L412 NwaCegarLoop]: 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-27 13:39:49,707 INFO L413 NwaCegarLoop]: 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-27 13:39:49,707 INFO L414 NwaCegarLoop]: 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-27 13:39:49,708 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-27 13:39:49,712 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 37. [2022-04-27 13:39:49,713 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:39:49,713 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-27 13:39:49,713 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-27 13:39:49,714 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-27 13:39:49,716 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:49,717 INFO L93 Difference]: Finished difference Result 44 states and 58 transitions. [2022-04-27 13:39:49,717 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 58 transitions. [2022-04-27 13:39:49,717 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:39:49,717 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:39:49,718 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-27 13:39:49,718 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-27 13:39:49,720 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:49,721 INFO L93 Difference]: Finished difference Result 44 states and 58 transitions. [2022-04-27 13:39:49,721 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 58 transitions. [2022-04-27 13:39:49,721 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:39:49,721 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:39:49,721 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:39:49,721 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:39:49,722 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-27 13:39:49,723 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 46 transitions. [2022-04-27 13:39:49,724 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 46 transitions. Word has length 28 [2022-04-27 13:39:49,724 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:39:49,724 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 46 transitions. [2022-04-27 13:39:49,724 INFO L496 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-27 13:39:49,724 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 46 transitions. [2022-04-27 13:39:49,725 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-27 13:39:49,725 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:39:49,725 INFO L195 NwaCegarLoop]: 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-27 13:39:49,725 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-27 13:39:49,725 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:39:49,725 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:39:49,725 INFO L85 PathProgramCache]: Analyzing trace with hash 1382067636, now seen corresponding path program 1 times [2022-04-27 13:39:49,726 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:39:49,726 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1788554456] [2022-04-27 13:39:49,726 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:39:49,726 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:39:49,746 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:49,818 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 13:39:49,820 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:49,830 INFO L290 TraceCheckUtils]: 0: Hoare triple {541#(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); {517#true} is VALID [2022-04-27 13:39:49,830 INFO L290 TraceCheckUtils]: 1: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:39:49,830 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {517#true} {517#true} #101#return; {517#true} is VALID [2022-04-27 13:39:49,830 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 13:39:49,831 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:49,834 INFO L290 TraceCheckUtils]: 0: Hoare triple {517#true} ~cond := #in~cond; {517#true} is VALID [2022-04-27 13:39:49,835 INFO L290 TraceCheckUtils]: 1: Hoare triple {517#true} assume !(0 == ~cond); {517#true} is VALID [2022-04-27 13:39:49,835 INFO L290 TraceCheckUtils]: 2: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:39:49,835 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {517#true} {517#true} #81#return; {517#true} is VALID [2022-04-27 13:39:49,835 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-27 13:39:49,836 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:49,839 INFO L290 TraceCheckUtils]: 0: Hoare triple {517#true} ~cond := #in~cond; {517#true} is VALID [2022-04-27 13:39:49,839 INFO L290 TraceCheckUtils]: 1: Hoare triple {517#true} assume !(0 == ~cond); {517#true} is VALID [2022-04-27 13:39:49,839 INFO L290 TraceCheckUtils]: 2: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:39:49,840 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {517#true} {517#true} #83#return; {517#true} is VALID [2022-04-27 13:39:49,840 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 13:39:49,840 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:49,843 INFO L290 TraceCheckUtils]: 0: Hoare triple {517#true} ~cond := #in~cond; {517#true} is VALID [2022-04-27 13:39:49,844 INFO L290 TraceCheckUtils]: 1: Hoare triple {517#true} assume !(0 == ~cond); {517#true} is VALID [2022-04-27 13:39:49,844 INFO L290 TraceCheckUtils]: 2: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:39:49,844 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {517#true} {517#true} #85#return; {517#true} is VALID [2022-04-27 13:39:49,844 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2022-04-27 13:39:49,846 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:49,849 INFO L290 TraceCheckUtils]: 0: Hoare triple {517#true} ~cond := #in~cond; {517#true} is VALID [2022-04-27 13:39:49,850 INFO L290 TraceCheckUtils]: 1: Hoare triple {517#true} assume !(0 == ~cond); {517#true} is VALID [2022-04-27 13:39:49,850 INFO L290 TraceCheckUtils]: 2: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:39:49,850 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {517#true} {534#(= main_~A~0 main_~r~0)} #87#return; {534#(= main_~A~0 main_~r~0)} is VALID [2022-04-27 13:39:49,851 INFO L272 TraceCheckUtils]: 0: Hoare triple {517#true} call ULTIMATE.init(); {541#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 13:39:49,851 INFO L290 TraceCheckUtils]: 1: Hoare triple {541#(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); {517#true} is VALID [2022-04-27 13:39:49,851 INFO L290 TraceCheckUtils]: 2: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:39:49,851 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {517#true} {517#true} #101#return; {517#true} is VALID [2022-04-27 13:39:49,851 INFO L272 TraceCheckUtils]: 4: Hoare triple {517#true} call #t~ret6 := main(); {517#true} is VALID [2022-04-27 13:39:49,852 INFO L290 TraceCheckUtils]: 5: Hoare triple {517#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; {517#true} is VALID [2022-04-27 13:39:49,852 INFO L272 TraceCheckUtils]: 6: Hoare triple {517#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 5 then 1 else 0)); {517#true} is VALID [2022-04-27 13:39:49,852 INFO L290 TraceCheckUtils]: 7: Hoare triple {517#true} ~cond := #in~cond; {517#true} is VALID [2022-04-27 13:39:49,852 INFO L290 TraceCheckUtils]: 8: Hoare triple {517#true} assume !(0 == ~cond); {517#true} is VALID [2022-04-27 13:39:49,852 INFO L290 TraceCheckUtils]: 9: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:39:49,852 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {517#true} {517#true} #81#return; {517#true} is VALID [2022-04-27 13:39:49,852 INFO L290 TraceCheckUtils]: 11: Hoare triple {517#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {517#true} is VALID [2022-04-27 13:39:49,852 INFO L272 TraceCheckUtils]: 12: Hoare triple {517#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 5 then 1 else 0)); {517#true} is VALID [2022-04-27 13:39:49,853 INFO L290 TraceCheckUtils]: 13: Hoare triple {517#true} ~cond := #in~cond; {517#true} is VALID [2022-04-27 13:39:49,853 INFO L290 TraceCheckUtils]: 14: Hoare triple {517#true} assume !(0 == ~cond); {517#true} is VALID [2022-04-27 13:39:49,853 INFO L290 TraceCheckUtils]: 15: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:39:49,853 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {517#true} {517#true} #83#return; {517#true} is VALID [2022-04-27 13:39:49,853 INFO L272 TraceCheckUtils]: 17: Hoare triple {517#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {517#true} is VALID [2022-04-27 13:39:49,853 INFO L290 TraceCheckUtils]: 18: Hoare triple {517#true} ~cond := #in~cond; {517#true} is VALID [2022-04-27 13:39:49,853 INFO L290 TraceCheckUtils]: 19: Hoare triple {517#true} assume !(0 == ~cond); {517#true} is VALID [2022-04-27 13:39:49,853 INFO L290 TraceCheckUtils]: 20: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:39:49,853 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {517#true} {517#true} #85#return; {517#true} is VALID [2022-04-27 13:39:49,854 INFO L290 TraceCheckUtils]: 22: Hoare triple {517#true} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {534#(= main_~A~0 main_~r~0)} is VALID [2022-04-27 13:39:49,854 INFO L290 TraceCheckUtils]: 23: Hoare triple {534#(= main_~A~0 main_~r~0)} assume !false; {534#(= main_~A~0 main_~r~0)} is VALID [2022-04-27 13:39:49,854 INFO L272 TraceCheckUtils]: 24: Hoare triple {534#(= main_~A~0 main_~r~0)} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {517#true} is VALID [2022-04-27 13:39:49,854 INFO L290 TraceCheckUtils]: 25: Hoare triple {517#true} ~cond := #in~cond; {517#true} is VALID [2022-04-27 13:39:49,855 INFO L290 TraceCheckUtils]: 26: Hoare triple {517#true} assume !(0 == ~cond); {517#true} is VALID [2022-04-27 13:39:49,855 INFO L290 TraceCheckUtils]: 27: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:39:49,855 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {517#true} {534#(= main_~A~0 main_~r~0)} #87#return; {534#(= main_~A~0 main_~r~0)} is VALID [2022-04-27 13:39:49,856 INFO L272 TraceCheckUtils]: 29: Hoare triple {534#(= main_~A~0 main_~r~0)} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {539#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:39:49,856 INFO L290 TraceCheckUtils]: 30: Hoare triple {539#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {540#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:39:49,857 INFO L290 TraceCheckUtils]: 31: Hoare triple {540#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {518#false} is VALID [2022-04-27 13:39:49,857 INFO L290 TraceCheckUtils]: 32: Hoare triple {518#false} assume !false; {518#false} is VALID [2022-04-27 13:39:49,857 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-27 13:39:49,857 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:39:49,857 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1788554456] [2022-04-27 13:39:49,857 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1788554456] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:39:49,857 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:39:49,858 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 13:39:49,858 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [987760343] [2022-04-27 13:39:49,858 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:39:49,858 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-27 13:39:49,859 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:39:49,859 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-27 13:39:49,878 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-27 13:39:49,878 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 13:39:49,878 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:39:49,878 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 13:39:49,879 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 13:39:49,879 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-27 13:39:50,317 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:50,317 INFO L93 Difference]: Finished difference Result 50 states and 63 transitions. [2022-04-27 13:39:50,317 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-27 13:39:50,317 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-27 13:39:50,318 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:39:50,318 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-27 13:39:50,320 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-27 13:39:50,320 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-27 13:39:50,321 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-27 13:39:50,321 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 60 transitions. [2022-04-27 13:39:50,398 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-27 13:39:50,399 INFO L225 Difference]: With dead ends: 50 [2022-04-27 13:39:50,399 INFO L226 Difference]: Without dead ends: 48 [2022-04-27 13:39:50,400 INFO L412 NwaCegarLoop]: 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-27 13:39:50,400 INFO L413 NwaCegarLoop]: 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-27 13:39:50,401 INFO L414 NwaCegarLoop]: 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-27 13:39:50,402 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-27 13:39:50,413 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 41. [2022-04-27 13:39:50,413 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:39:50,414 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-27 13:39:50,414 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-27 13:39:50,414 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-27 13:39:50,416 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:50,416 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-27 13:39:50,416 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-27 13:39:50,417 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:39:50,417 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:39:50,418 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-27 13:39:50,418 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-27 13:39:50,420 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:50,420 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-27 13:39:50,420 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-27 13:39:50,420 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:39:50,421 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:39:50,421 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:39:50,421 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:39:50,421 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-27 13:39:50,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 49 transitions. [2022-04-27 13:39:50,422 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 49 transitions. Word has length 33 [2022-04-27 13:39:50,423 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:39:50,423 INFO L495 AbstractCegarLoop]: Abstraction has 41 states and 49 transitions. [2022-04-27 13:39:50,427 INFO L496 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-27 13:39:50,427 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 49 transitions. [2022-04-27 13:39:50,428 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-27 13:39:50,428 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:39:50,428 INFO L195 NwaCegarLoop]: 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-27 13:39:50,428 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-04-27 13:39:50,429 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:39:50,429 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:39:50,429 INFO L85 PathProgramCache]: Analyzing trace with hash -1455208590, now seen corresponding path program 1 times [2022-04-27 13:39:50,429 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:39:50,429 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [70567552] [2022-04-27 13:39:50,429 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:39:50,429 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:39:50,458 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:39:50,458 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [898827075] [2022-04-27 13:39:50,458 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:39:50,458 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:39:50,459 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:39:50,463 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-27 13:39:50,464 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-27 13:39:50,504 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:50,506 INFO L263 TraceCheckSpWp]: Trace formula consists of 106 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 13:39:50,514 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:50,518 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:39:50,658 INFO L272 TraceCheckUtils]: 0: Hoare triple {781#true} call ULTIMATE.init(); {781#true} is VALID [2022-04-27 13:39:50,658 INFO L290 TraceCheckUtils]: 1: Hoare triple {781#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); {781#true} is VALID [2022-04-27 13:39:50,658 INFO L290 TraceCheckUtils]: 2: Hoare triple {781#true} assume true; {781#true} is VALID [2022-04-27 13:39:50,658 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {781#true} {781#true} #101#return; {781#true} is VALID [2022-04-27 13:39:50,658 INFO L272 TraceCheckUtils]: 4: Hoare triple {781#true} call #t~ret6 := main(); {781#true} is VALID [2022-04-27 13:39:50,659 INFO L290 TraceCheckUtils]: 5: Hoare triple {781#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; {781#true} is VALID [2022-04-27 13:39:50,659 INFO L272 TraceCheckUtils]: 6: Hoare triple {781#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 5 then 1 else 0)); {781#true} is VALID [2022-04-27 13:39:50,659 INFO L290 TraceCheckUtils]: 7: Hoare triple {781#true} ~cond := #in~cond; {781#true} is VALID [2022-04-27 13:39:50,659 INFO L290 TraceCheckUtils]: 8: Hoare triple {781#true} assume !(0 == ~cond); {781#true} is VALID [2022-04-27 13:39:50,659 INFO L290 TraceCheckUtils]: 9: Hoare triple {781#true} assume true; {781#true} is VALID [2022-04-27 13:39:50,659 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {781#true} {781#true} #81#return; {781#true} is VALID [2022-04-27 13:39:50,659 INFO L290 TraceCheckUtils]: 11: Hoare triple {781#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {781#true} is VALID [2022-04-27 13:39:50,659 INFO L272 TraceCheckUtils]: 12: Hoare triple {781#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 5 then 1 else 0)); {781#true} is VALID [2022-04-27 13:39:50,659 INFO L290 TraceCheckUtils]: 13: Hoare triple {781#true} ~cond := #in~cond; {781#true} is VALID [2022-04-27 13:39:50,659 INFO L290 TraceCheckUtils]: 14: Hoare triple {781#true} assume !(0 == ~cond); {781#true} is VALID [2022-04-27 13:39:50,659 INFO L290 TraceCheckUtils]: 15: Hoare triple {781#true} assume true; {781#true} is VALID [2022-04-27 13:39:50,660 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {781#true} {781#true} #83#return; {781#true} is VALID [2022-04-27 13:39:50,660 INFO L272 TraceCheckUtils]: 17: Hoare triple {781#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {781#true} is VALID [2022-04-27 13:39:50,660 INFO L290 TraceCheckUtils]: 18: Hoare triple {781#true} ~cond := #in~cond; {781#true} is VALID [2022-04-27 13:39:50,660 INFO L290 TraceCheckUtils]: 19: Hoare triple {781#true} assume !(0 == ~cond); {781#true} is VALID [2022-04-27 13:39:50,660 INFO L290 TraceCheckUtils]: 20: Hoare triple {781#true} assume true; {781#true} is VALID [2022-04-27 13:39:50,660 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {781#true} {781#true} #85#return; {781#true} is VALID [2022-04-27 13:39:50,661 INFO L290 TraceCheckUtils]: 22: Hoare triple {781#true} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {852#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-27 13:39:50,661 INFO L290 TraceCheckUtils]: 23: Hoare triple {852#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} assume !false; {852#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-27 13:39:50,661 INFO L272 TraceCheckUtils]: 24: Hoare triple {852#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {781#true} is VALID [2022-04-27 13:39:50,661 INFO L290 TraceCheckUtils]: 25: Hoare triple {781#true} ~cond := #in~cond; {781#true} is VALID [2022-04-27 13:39:50,661 INFO L290 TraceCheckUtils]: 26: Hoare triple {781#true} assume !(0 == ~cond); {781#true} is VALID [2022-04-27 13:39:50,661 INFO L290 TraceCheckUtils]: 27: Hoare triple {781#true} assume true; {781#true} is VALID [2022-04-27 13:39:50,662 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {781#true} {852#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} #87#return; {852#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-27 13:39:50,662 INFO L272 TraceCheckUtils]: 29: Hoare triple {852#(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)); {781#true} is VALID [2022-04-27 13:39:50,662 INFO L290 TraceCheckUtils]: 30: Hoare triple {781#true} ~cond := #in~cond; {781#true} is VALID [2022-04-27 13:39:50,662 INFO L290 TraceCheckUtils]: 31: Hoare triple {781#true} assume !(0 == ~cond); {781#true} is VALID [2022-04-27 13:39:50,662 INFO L290 TraceCheckUtils]: 32: Hoare triple {781#true} assume true; {781#true} is VALID [2022-04-27 13:39:50,663 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {781#true} {852#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} #89#return; {852#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-27 13:39:50,664 INFO L272 TraceCheckUtils]: 34: Hoare triple {852#(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)); {889#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:39:50,664 INFO L290 TraceCheckUtils]: 35: Hoare triple {889#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {893#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:39:50,665 INFO L290 TraceCheckUtils]: 36: Hoare triple {893#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {782#false} is VALID [2022-04-27 13:39:50,665 INFO L290 TraceCheckUtils]: 37: Hoare triple {782#false} assume !false; {782#false} is VALID [2022-04-27 13:39:50,665 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-27 13:39:50,665 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:39:50,665 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:39:50,665 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [70567552] [2022-04-27 13:39:50,665 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:39:50,665 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [898827075] [2022-04-27 13:39:50,666 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [898827075] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:39:50,666 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:39:50,666 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:39:50,666 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [305227178] [2022-04-27 13:39:50,666 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:39:50,666 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-27 13:39:50,667 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:39:50,667 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-27 13:39:50,702 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-27 13:39:50,703 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:39:50,703 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:39:50,703 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:39:50,703 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:39:50,703 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-27 13:39:52,827 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-27 13:39:53,100 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:53,101 INFO L93 Difference]: Finished difference Result 58 states and 73 transitions. [2022-04-27 13:39:53,101 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:39:53,101 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-27 13:39:53,101 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:39:53,101 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-27 13:39:53,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-27 13:39:53,103 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-27 13:39:53,104 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-27 13:39:53,104 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 67 transitions. [2022-04-27 13:39:53,169 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-27 13:39:53,171 INFO L225 Difference]: With dead ends: 58 [2022-04-27 13:39:53,171 INFO L226 Difference]: Without dead ends: 55 [2022-04-27 13:39:53,171 INFO L412 NwaCegarLoop]: 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-27 13:39:53,172 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 8 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 49 mSolverCounterSat, 2 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 142 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 49 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:39:53,172 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 142 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 49 Invalid, 1 Unknown, 0 Unchecked, 2.0s Time] [2022-04-27 13:39:53,173 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-27 13:39:53,182 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 55. [2022-04-27 13:39:53,182 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:39:53,183 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-27 13:39:53,183 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-27 13:39:53,183 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-27 13:39:53,186 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:53,186 INFO L93 Difference]: Finished difference Result 55 states and 69 transitions. [2022-04-27 13:39:53,186 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 69 transitions. [2022-04-27 13:39:53,186 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:39:53,186 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:39:53,187 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-27 13:39:53,191 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-27 13:39:53,196 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:53,196 INFO L93 Difference]: Finished difference Result 55 states and 69 transitions. [2022-04-27 13:39:53,196 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 69 transitions. [2022-04-27 13:39:53,199 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:39:53,199 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:39:53,199 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:39:53,199 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:39:53,200 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-27 13:39:53,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 69 transitions. [2022-04-27 13:39:53,204 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 69 transitions. Word has length 38 [2022-04-27 13:39:53,204 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:39:53,204 INFO L495 AbstractCegarLoop]: Abstraction has 55 states and 69 transitions. [2022-04-27 13:39:53,204 INFO L496 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-27 13:39:53,204 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 69 transitions. [2022-04-27 13:39:53,205 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-27 13:39:53,205 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:39:53,205 INFO L195 NwaCegarLoop]: 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-27 13:39:53,225 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-27 13:39:53,425 WARN L477 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-27 13:39:53,426 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:39:53,426 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:39:53,426 INFO L85 PathProgramCache]: Analyzing trace with hash -1688067263, now seen corresponding path program 1 times [2022-04-27 13:39:53,426 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:39:53,426 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1575670025] [2022-04-27 13:39:53,427 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:39:53,427 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:39:53,444 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:39:53,444 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [291855035] [2022-04-27 13:39:53,444 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:39:53,444 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:39:53,444 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:39:53,452 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-27 13:39:53,457 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-27 13:39:53,502 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:53,503 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-27 13:39:53,514 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:53,515 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:39:54,944 INFO L272 TraceCheckUtils]: 0: Hoare triple {1179#true} call ULTIMATE.init(); {1179#true} is VALID [2022-04-27 13:39:54,945 INFO L290 TraceCheckUtils]: 1: Hoare triple {1179#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); {1179#true} is VALID [2022-04-27 13:39:54,945 INFO L290 TraceCheckUtils]: 2: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:39:54,945 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1179#true} {1179#true} #101#return; {1179#true} is VALID [2022-04-27 13:39:54,945 INFO L272 TraceCheckUtils]: 4: Hoare triple {1179#true} call #t~ret6 := main(); {1179#true} is VALID [2022-04-27 13:39:54,945 INFO L290 TraceCheckUtils]: 5: Hoare triple {1179#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; {1179#true} is VALID [2022-04-27 13:39:54,945 INFO L272 TraceCheckUtils]: 6: Hoare triple {1179#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 5 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:39:54,945 INFO L290 TraceCheckUtils]: 7: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:39:54,945 INFO L290 TraceCheckUtils]: 8: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:39:54,946 INFO L290 TraceCheckUtils]: 9: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:39:54,946 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1179#true} {1179#true} #81#return; {1179#true} is VALID [2022-04-27 13:39:54,946 INFO L290 TraceCheckUtils]: 11: Hoare triple {1179#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {1179#true} is VALID [2022-04-27 13:39:54,946 INFO L272 TraceCheckUtils]: 12: Hoare triple {1179#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 5 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:39:54,946 INFO L290 TraceCheckUtils]: 13: Hoare triple {1179#true} ~cond := #in~cond; {1223#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:39:54,947 INFO L290 TraceCheckUtils]: 14: Hoare triple {1223#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1227#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:39:54,947 INFO L290 TraceCheckUtils]: 15: Hoare triple {1227#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1227#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:39:54,948 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1227#(not (= |assume_abort_if_not_#in~cond| 0))} {1179#true} #83#return; {1234#(<= (mod main_~B~0 4294967296) 5)} is VALID [2022-04-27 13:39:54,948 INFO L272 TraceCheckUtils]: 17: Hoare triple {1234#(<= (mod main_~B~0 4294967296) 5)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:39:54,948 INFO L290 TraceCheckUtils]: 18: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:39:54,948 INFO L290 TraceCheckUtils]: 19: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:39:54,948 INFO L290 TraceCheckUtils]: 20: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:39:54,949 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1179#true} {1234#(<= (mod main_~B~0 4294967296) 5)} #85#return; {1234#(<= (mod main_~B~0 4294967296) 5)} is VALID [2022-04-27 13:39:54,949 INFO L290 TraceCheckUtils]: 22: Hoare triple {1234#(<= (mod main_~B~0 4294967296) 5)} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (= main_~q~0 0) (= main_~B~0 main_~d~0))} is VALID [2022-04-27 13:39:54,950 INFO L290 TraceCheckUtils]: 23: Hoare triple {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (= main_~q~0 0) (= main_~B~0 main_~d~0))} assume !false; {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (= main_~q~0 0) (= main_~B~0 main_~d~0))} is VALID [2022-04-27 13:39:54,950 INFO L272 TraceCheckUtils]: 24: Hoare triple {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (= main_~q~0 0) (= main_~B~0 main_~d~0))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:39:54,950 INFO L290 TraceCheckUtils]: 25: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:39:54,950 INFO L290 TraceCheckUtils]: 26: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:39:54,950 INFO L290 TraceCheckUtils]: 27: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:39:54,951 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1179#true} {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (= main_~q~0 0) (= main_~B~0 main_~d~0))} #87#return; {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (= main_~q~0 0) (= main_~B~0 main_~d~0))} is VALID [2022-04-27 13:39:54,951 INFO L272 TraceCheckUtils]: 29: Hoare triple {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (= main_~q~0 0) (= main_~B~0 main_~d~0))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:39:54,951 INFO L290 TraceCheckUtils]: 30: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:39:54,951 INFO L290 TraceCheckUtils]: 31: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:39:54,951 INFO L290 TraceCheckUtils]: 32: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:39:54,952 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1179#true} {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (= main_~q~0 0) (= main_~B~0 main_~d~0))} #89#return; {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (= main_~q~0 0) (= main_~B~0 main_~d~0))} is VALID [2022-04-27 13:39:54,952 INFO L272 TraceCheckUtils]: 34: Hoare triple {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (= main_~q~0 0) (= main_~B~0 main_~d~0))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:39:54,952 INFO L290 TraceCheckUtils]: 35: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:39:54,952 INFO L290 TraceCheckUtils]: 36: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:39:54,952 INFO L290 TraceCheckUtils]: 37: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:39:54,953 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1179#true} {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (= main_~q~0 0) (= main_~B~0 main_~d~0))} #91#return; {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (= main_~q~0 0) (= main_~B~0 main_~d~0))} is VALID [2022-04-27 13:39:54,953 INFO L290 TraceCheckUtils]: 39: Hoare triple {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (= main_~q~0 0) (= main_~B~0 main_~d~0))} assume !(~r~0 % 4294967296 >= ~d~0 % 4294967296); {1305#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (not (<= (mod main_~B~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} is VALID [2022-04-27 13:39:54,954 INFO L290 TraceCheckUtils]: 40: Hoare triple {1305#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (not (<= (mod main_~B~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} assume !false; {1305#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (not (<= (mod main_~B~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} is VALID [2022-04-27 13:39:54,955 INFO L272 TraceCheckUtils]: 41: Hoare triple {1305#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 5) (not (<= (mod main_~B~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == (~q~0 * ~B~0 + ~r~0) % 4294967296 then 1 else 0)); {1312#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:39:54,955 INFO L290 TraceCheckUtils]: 42: Hoare triple {1312#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1316#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:39:54,955 INFO L290 TraceCheckUtils]: 43: Hoare triple {1316#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1180#false} is VALID [2022-04-27 13:39:54,955 INFO L290 TraceCheckUtils]: 44: Hoare triple {1180#false} assume !false; {1180#false} is VALID [2022-04-27 13:39:54,956 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-27 13:39:54,956 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:39:55,362 INFO L290 TraceCheckUtils]: 44: Hoare triple {1180#false} assume !false; {1180#false} is VALID [2022-04-27 13:39:55,364 INFO L290 TraceCheckUtils]: 43: Hoare triple {1316#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1180#false} is VALID [2022-04-27 13:39:55,364 INFO L290 TraceCheckUtils]: 42: Hoare triple {1312#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1316#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:39:55,365 INFO L272 TraceCheckUtils]: 41: Hoare triple {1332#(= (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)); {1312#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:39:55,366 INFO L290 TraceCheckUtils]: 40: Hoare triple {1332#(= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296))} assume !false; {1332#(= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296))} is VALID [2022-04-27 13:39:55,366 INFO L290 TraceCheckUtils]: 39: Hoare triple {1339#(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); {1332#(= (mod (+ (* main_~B~0 main_~q~0) main_~r~0) 4294967296) (mod main_~A~0 4294967296))} is VALID [2022-04-27 13:39:55,366 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1179#true} {1339#(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; {1339#(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-27 13:39:55,367 INFO L290 TraceCheckUtils]: 37: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:39:55,367 INFO L290 TraceCheckUtils]: 36: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:39:55,367 INFO L290 TraceCheckUtils]: 35: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:39:55,367 INFO L272 TraceCheckUtils]: 34: Hoare triple {1339#(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)); {1179#true} is VALID [2022-04-27 13:39:55,368 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1179#true} {1339#(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; {1339#(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-27 13:39:55,368 INFO L290 TraceCheckUtils]: 32: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:39:55,368 INFO L290 TraceCheckUtils]: 31: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:39:55,368 INFO L290 TraceCheckUtils]: 30: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:39:55,368 INFO L272 TraceCheckUtils]: 29: Hoare triple {1339#(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)); {1179#true} is VALID [2022-04-27 13:39:55,369 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1179#true} {1339#(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; {1339#(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-27 13:39:55,369 INFO L290 TraceCheckUtils]: 27: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:39:55,369 INFO L290 TraceCheckUtils]: 26: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:39:55,369 INFO L290 TraceCheckUtils]: 25: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:39:55,369 INFO L272 TraceCheckUtils]: 24: Hoare triple {1339#(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)); {1179#true} is VALID [2022-04-27 13:39:55,370 INFO L290 TraceCheckUtils]: 23: Hoare triple {1339#(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; {1339#(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-27 13:39:55,375 INFO L290 TraceCheckUtils]: 22: Hoare triple {1179#true} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {1339#(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-27 13:39:55,375 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1179#true} {1179#true} #85#return; {1179#true} is VALID [2022-04-27 13:39:55,375 INFO L290 TraceCheckUtils]: 20: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:39:55,375 INFO L290 TraceCheckUtils]: 19: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:39:55,376 INFO L290 TraceCheckUtils]: 18: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:39:55,376 INFO L272 TraceCheckUtils]: 17: Hoare triple {1179#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:39:55,376 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1179#true} {1179#true} #83#return; {1179#true} is VALID [2022-04-27 13:39:55,376 INFO L290 TraceCheckUtils]: 15: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:39:55,376 INFO L290 TraceCheckUtils]: 14: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:39:55,376 INFO L290 TraceCheckUtils]: 13: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:39:55,376 INFO L272 TraceCheckUtils]: 12: Hoare triple {1179#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 5 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:39:55,376 INFO L290 TraceCheckUtils]: 11: Hoare triple {1179#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {1179#true} is VALID [2022-04-27 13:39:55,376 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1179#true} {1179#true} #81#return; {1179#true} is VALID [2022-04-27 13:39:55,376 INFO L290 TraceCheckUtils]: 9: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:39:55,376 INFO L290 TraceCheckUtils]: 8: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:39:55,376 INFO L290 TraceCheckUtils]: 7: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:39:55,377 INFO L272 TraceCheckUtils]: 6: Hoare triple {1179#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 5 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:39:55,377 INFO L290 TraceCheckUtils]: 5: Hoare triple {1179#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; {1179#true} is VALID [2022-04-27 13:39:55,377 INFO L272 TraceCheckUtils]: 4: Hoare triple {1179#true} call #t~ret6 := main(); {1179#true} is VALID [2022-04-27 13:39:55,377 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1179#true} {1179#true} #101#return; {1179#true} is VALID [2022-04-27 13:39:55,377 INFO L290 TraceCheckUtils]: 2: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:39:55,377 INFO L290 TraceCheckUtils]: 1: Hoare triple {1179#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); {1179#true} is VALID [2022-04-27 13:39:55,377 INFO L272 TraceCheckUtils]: 0: Hoare triple {1179#true} call ULTIMATE.init(); {1179#true} is VALID [2022-04-27 13:39:55,377 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-27 13:39:55,377 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:39:55,377 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1575670025] [2022-04-27 13:39:55,377 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:39:55,378 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [291855035] [2022-04-27 13:39:55,378 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [291855035] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 13:39:55,378 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:39:55,378 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-27 13:39:55,378 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1461367337] [2022-04-27 13:39:55,378 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:39:55,378 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-27 13:39:55,379 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:39:55,379 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-27 13:39:55,402 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-27 13:39:55,403 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 13:39:55,403 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:39:55,403 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 13:39:55,403 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:39:55,403 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-27 13:39:57,714 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-27 13:39:57,879 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:57,880 INFO L93 Difference]: Finished difference Result 68 states and 86 transitions. [2022-04-27 13:39:57,880 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:39:57,880 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-27 13:39:57,880 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:39:57,880 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-27 13:39:57,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-27 13:39:57,882 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-27 13:39:57,882 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-27 13:39:57,882 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-04-27 13:39:57,935 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-27 13:39:57,938 INFO L225 Difference]: With dead ends: 68 [2022-04-27 13:39:57,938 INFO L226 Difference]: Without dead ends: 66 [2022-04-27 13:39:57,939 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 90 GetRequests, 79 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=30, Invalid=102, Unknown=0, NotChecked=0, Total=132 [2022-04-27 13:39:57,939 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 16 mSDsluCounter, 87 mSDsCounter, 0 mSdLazyCounter, 53 mSolverCounterSat, 4 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 130 SdHoareTripleChecker+Invalid, 58 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 53 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:39:57,940 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [22 Valid, 130 Invalid, 58 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 53 Invalid, 1 Unknown, 0 Unchecked, 2.2s Time] [2022-04-27 13:39:57,940 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2022-04-27 13:39:57,947 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 64. [2022-04-27 13:39:57,947 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:39:57,947 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-27 13:39:57,948 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-27 13:39:57,948 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-27 13:39:57,950 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:57,951 INFO L93 Difference]: Finished difference Result 66 states and 84 transitions. [2022-04-27 13:39:57,951 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 84 transitions. [2022-04-27 13:39:57,951 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:39:57,951 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:39:57,951 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-27 13:39:57,959 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-27 13:39:57,961 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:57,961 INFO L93 Difference]: Finished difference Result 66 states and 84 transitions. [2022-04-27 13:39:57,961 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 84 transitions. [2022-04-27 13:39:57,962 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:39:57,962 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:39:57,962 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:39:57,962 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:39:57,962 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-27 13:39:57,984 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 81 transitions. [2022-04-27 13:39:57,984 INFO L78 Accepts]: Start accepts. Automaton has 64 states and 81 transitions. Word has length 45 [2022-04-27 13:39:57,985 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:39:57,985 INFO L495 AbstractCegarLoop]: Abstraction has 64 states and 81 transitions. [2022-04-27 13:39:57,985 INFO L496 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-27 13:39:57,985 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 81 transitions. [2022-04-27 13:39:57,986 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-27 13:39:57,986 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:39:57,986 INFO L195 NwaCegarLoop]: 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-27 13:39:58,005 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-27 13:39:58,203 WARN L477 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-27 13:39:58,203 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:39:58,204 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:39:58,204 INFO L85 PathProgramCache]: Analyzing trace with hash -1471734606, now seen corresponding path program 1 times [2022-04-27 13:39:58,204 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:39:58,204 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1053222435] [2022-04-27 13:39:58,204 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:39:58,204 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:39:58,226 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:39:58,226 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [544489412] [2022-04-27 13:39:58,226 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:39:58,226 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:39:58,227 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:39:58,236 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-27 13:39:58,237 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-27 13:39:58,328 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:58,329 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-27 13:39:58,341 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:58,343 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:39:58,555 INFO L272 TraceCheckUtils]: 0: Hoare triple {1787#true} call ULTIMATE.init(); {1787#true} is VALID [2022-04-27 13:39:58,555 INFO L290 TraceCheckUtils]: 1: Hoare triple {1787#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); {1787#true} is VALID [2022-04-27 13:39:58,555 INFO L290 TraceCheckUtils]: 2: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:39:58,555 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1787#true} {1787#true} #101#return; {1787#true} is VALID [2022-04-27 13:39:58,555 INFO L272 TraceCheckUtils]: 4: Hoare triple {1787#true} call #t~ret6 := main(); {1787#true} is VALID [2022-04-27 13:39:58,555 INFO L290 TraceCheckUtils]: 5: Hoare triple {1787#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; {1787#true} is VALID [2022-04-27 13:39:58,555 INFO L272 TraceCheckUtils]: 6: Hoare triple {1787#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 5 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:39:58,556 INFO L290 TraceCheckUtils]: 7: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:39:58,556 INFO L290 TraceCheckUtils]: 8: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:39:58,556 INFO L290 TraceCheckUtils]: 9: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:39:58,556 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1787#true} {1787#true} #81#return; {1787#true} is VALID [2022-04-27 13:39:58,556 INFO L290 TraceCheckUtils]: 11: Hoare triple {1787#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {1787#true} is VALID [2022-04-27 13:39:58,556 INFO L272 TraceCheckUtils]: 12: Hoare triple {1787#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 5 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:39:58,556 INFO L290 TraceCheckUtils]: 13: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:39:58,556 INFO L290 TraceCheckUtils]: 14: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:39:58,556 INFO L290 TraceCheckUtils]: 15: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:39:58,556 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1787#true} {1787#true} #83#return; {1787#true} is VALID [2022-04-27 13:39:58,556 INFO L272 TraceCheckUtils]: 17: Hoare triple {1787#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:39:58,556 INFO L290 TraceCheckUtils]: 18: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:39:58,556 INFO L290 TraceCheckUtils]: 19: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:39:58,556 INFO L290 TraceCheckUtils]: 20: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:39:58,557 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1787#true} {1787#true} #85#return; {1787#true} is VALID [2022-04-27 13:39:58,557 INFO L290 TraceCheckUtils]: 22: Hoare triple {1787#true} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {1858#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-27 13:39:58,557 INFO L290 TraceCheckUtils]: 23: Hoare triple {1858#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} assume !false; {1858#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-27 13:39:58,557 INFO L272 TraceCheckUtils]: 24: Hoare triple {1858#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:39:58,557 INFO L290 TraceCheckUtils]: 25: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:39:58,558 INFO L290 TraceCheckUtils]: 26: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:39:58,558 INFO L290 TraceCheckUtils]: 27: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:39:58,558 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1787#true} {1858#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} #87#return; {1858#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-27 13:39:58,558 INFO L272 TraceCheckUtils]: 29: Hoare triple {1858#(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)); {1787#true} is VALID [2022-04-27 13:39:58,558 INFO L290 TraceCheckUtils]: 30: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:39:58,558 INFO L290 TraceCheckUtils]: 31: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:39:58,558 INFO L290 TraceCheckUtils]: 32: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:39:58,559 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1787#true} {1858#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} #89#return; {1858#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-27 13:39:58,559 INFO L272 TraceCheckUtils]: 34: Hoare triple {1858#(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)); {1787#true} is VALID [2022-04-27 13:39:58,559 INFO L290 TraceCheckUtils]: 35: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:39:58,559 INFO L290 TraceCheckUtils]: 36: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:39:58,559 INFO L290 TraceCheckUtils]: 37: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:39:58,560 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1787#true} {1858#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} #91#return; {1858#(and (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-27 13:39:58,561 INFO L290 TraceCheckUtils]: 39: Hoare triple {1858#(and (= 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; {1910#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2))} is VALID [2022-04-27 13:39:58,562 INFO L290 TraceCheckUtils]: 40: Hoare triple {1910#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2))} assume !false; {1910#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2))} is VALID [2022-04-27 13:39:58,562 INFO L272 TraceCheckUtils]: 41: Hoare triple {1910#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:39:58,562 INFO L290 TraceCheckUtils]: 42: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:39:58,562 INFO L290 TraceCheckUtils]: 43: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:39:58,562 INFO L290 TraceCheckUtils]: 44: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:39:58,563 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1787#true} {1910#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2))} #87#return; {1910#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2))} is VALID [2022-04-27 13:39:58,563 INFO L272 TraceCheckUtils]: 46: Hoare triple {1910#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:39:58,563 INFO L290 TraceCheckUtils]: 47: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:39:58,563 INFO L290 TraceCheckUtils]: 48: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:39:58,563 INFO L290 TraceCheckUtils]: 49: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:39:58,564 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1787#true} {1910#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2))} #89#return; {1910#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2))} is VALID [2022-04-27 13:39:58,565 INFO L272 TraceCheckUtils]: 51: Hoare triple {1910#(and (= (* main_~B~0 2) main_~d~0) (= main_~p~0 2))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {1947#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:39:58,565 INFO L290 TraceCheckUtils]: 52: Hoare triple {1947#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1951#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:39:58,566 INFO L290 TraceCheckUtils]: 53: Hoare triple {1951#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1788#false} is VALID [2022-04-27 13:39:58,566 INFO L290 TraceCheckUtils]: 54: Hoare triple {1788#false} assume !false; {1788#false} is VALID [2022-04-27 13:39:58,566 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-27 13:39:58,566 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:39:58,911 INFO L290 TraceCheckUtils]: 54: Hoare triple {1788#false} assume !false; {1788#false} is VALID [2022-04-27 13:39:58,912 INFO L290 TraceCheckUtils]: 53: Hoare triple {1951#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1788#false} is VALID [2022-04-27 13:39:58,912 INFO L290 TraceCheckUtils]: 52: Hoare triple {1947#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1951#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:39:58,913 INFO L272 TraceCheckUtils]: 51: Hoare triple {1967#(= (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)); {1947#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:39:58,913 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1787#true} {1967#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} #89#return; {1967#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} is VALID [2022-04-27 13:39:58,913 INFO L290 TraceCheckUtils]: 49: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:39:58,913 INFO L290 TraceCheckUtils]: 48: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:39:58,913 INFO L290 TraceCheckUtils]: 47: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:39:58,914 INFO L272 TraceCheckUtils]: 46: Hoare triple {1967#(= (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)); {1787#true} is VALID [2022-04-27 13:39:58,914 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1787#true} {1967#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} #87#return; {1967#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} is VALID [2022-04-27 13:39:58,914 INFO L290 TraceCheckUtils]: 44: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:39:58,914 INFO L290 TraceCheckUtils]: 43: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:39:58,914 INFO L290 TraceCheckUtils]: 42: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:39:58,914 INFO L272 TraceCheckUtils]: 41: Hoare triple {1967#(= (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)); {1787#true} is VALID [2022-04-27 13:39:58,915 INFO L290 TraceCheckUtils]: 40: Hoare triple {1967#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} assume !false; {1967#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} is VALID [2022-04-27 13:40:00,643 INFO L290 TraceCheckUtils]: 39: Hoare triple {2004#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} assume !!(~r~0 % 4294967296 >= ~d~0 % 4294967296);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {1967#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} is VALID [2022-04-27 13:40:00,644 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1787#true} {2004#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} #91#return; {2004#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} is VALID [2022-04-27 13:40:00,644 INFO L290 TraceCheckUtils]: 37: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:40:00,644 INFO L290 TraceCheckUtils]: 36: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:40:00,644 INFO L290 TraceCheckUtils]: 35: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:40:00,644 INFO L272 TraceCheckUtils]: 34: Hoare triple {2004#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:40:00,645 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1787#true} {2004#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} #89#return; {2004#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} is VALID [2022-04-27 13:40:00,645 INFO L290 TraceCheckUtils]: 32: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:40:00,645 INFO L290 TraceCheckUtils]: 31: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:40:00,645 INFO L290 TraceCheckUtils]: 30: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:40:00,645 INFO L272 TraceCheckUtils]: 29: Hoare triple {2004#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:40:00,647 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1787#true} {2004#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} #87#return; {2004#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} is VALID [2022-04-27 13:40:00,647 INFO L290 TraceCheckUtils]: 27: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:40:00,647 INFO L290 TraceCheckUtils]: 26: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:40:00,648 INFO L290 TraceCheckUtils]: 25: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:40:00,648 INFO L272 TraceCheckUtils]: 24: Hoare triple {2004#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:40:00,649 INFO L290 TraceCheckUtils]: 23: Hoare triple {2004#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} assume !false; {2004#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} is VALID [2022-04-27 13:40:00,649 INFO L290 TraceCheckUtils]: 22: Hoare triple {1787#true} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {2004#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} is VALID [2022-04-27 13:40:00,650 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1787#true} {1787#true} #85#return; {1787#true} is VALID [2022-04-27 13:40:00,650 INFO L290 TraceCheckUtils]: 20: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:40:00,650 INFO L290 TraceCheckUtils]: 19: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:40:00,650 INFO L290 TraceCheckUtils]: 18: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:40:00,650 INFO L272 TraceCheckUtils]: 17: Hoare triple {1787#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:40:00,650 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1787#true} {1787#true} #83#return; {1787#true} is VALID [2022-04-27 13:40:00,650 INFO L290 TraceCheckUtils]: 15: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:40:00,650 INFO L290 TraceCheckUtils]: 14: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:40:00,650 INFO L290 TraceCheckUtils]: 13: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:40:00,650 INFO L272 TraceCheckUtils]: 12: Hoare triple {1787#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 5 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:40:00,650 INFO L290 TraceCheckUtils]: 11: Hoare triple {1787#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {1787#true} is VALID [2022-04-27 13:40:00,650 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1787#true} {1787#true} #81#return; {1787#true} is VALID [2022-04-27 13:40:00,650 INFO L290 TraceCheckUtils]: 9: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:40:00,650 INFO L290 TraceCheckUtils]: 8: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:40:00,651 INFO L290 TraceCheckUtils]: 7: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:40:00,651 INFO L272 TraceCheckUtils]: 6: Hoare triple {1787#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 5 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:40:00,651 INFO L290 TraceCheckUtils]: 5: Hoare triple {1787#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; {1787#true} is VALID [2022-04-27 13:40:00,651 INFO L272 TraceCheckUtils]: 4: Hoare triple {1787#true} call #t~ret6 := main(); {1787#true} is VALID [2022-04-27 13:40:00,651 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1787#true} {1787#true} #101#return; {1787#true} is VALID [2022-04-27 13:40:00,651 INFO L290 TraceCheckUtils]: 2: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:40:00,651 INFO L290 TraceCheckUtils]: 1: Hoare triple {1787#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); {1787#true} is VALID [2022-04-27 13:40:00,651 INFO L272 TraceCheckUtils]: 0: Hoare triple {1787#true} call ULTIMATE.init(); {1787#true} is VALID [2022-04-27 13:40:00,651 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-27 13:40:00,651 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:40:00,651 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1053222435] [2022-04-27 13:40:00,652 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:40:00,652 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [544489412] [2022-04-27 13:40:00,652 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [544489412] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 13:40:00,652 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:40:00,652 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [6] total 8 [2022-04-27 13:40:00,652 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2004590619] [2022-04-27 13:40:00,652 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:40:00,652 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-27 13:40:00,653 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:40:00,653 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-27 13:40:02,703 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-27 13:40:02,704 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 13:40:02,704 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:40:02,704 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 13:40:02,704 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=38, Unknown=0, NotChecked=0, Total=56 [2022-04-27 13:40:02,704 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-27 13:40:07,632 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-27 13:40:12,164 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-27 13:40:15,510 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:40:15,511 INFO L93 Difference]: Finished difference Result 76 states and 96 transitions. [2022-04-27 13:40:15,511 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:40:15,511 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-27 13:40:15,511 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:40:15,511 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-27 13:40:15,512 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 58 transitions. [2022-04-27 13:40:15,512 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-27 13:40:15,513 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 58 transitions. [2022-04-27 13:40:15,513 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 58 transitions. [2022-04-27 13:40:17,601 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 57 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 13:40:17,603 INFO L225 Difference]: With dead ends: 76 [2022-04-27 13:40:17,603 INFO L226 Difference]: Without dead ends: 74 [2022-04-27 13:40:17,603 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 110 GetRequests, 102 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=22, Invalid=50, Unknown=0, NotChecked=0, Total=72 [2022-04-27 13:40:17,604 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 11 mSDsluCounter, 89 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 5 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 5.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 131 SdHoareTripleChecker+Invalid, 58 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 5.9s IncrementalHoareTripleChecker+Time [2022-04-27 13:40:17,604 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [15 Valid, 131 Invalid, 58 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 51 Invalid, 2 Unknown, 0 Unchecked, 5.9s Time] [2022-04-27 13:40:17,604 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-27 13:40:17,612 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 71. [2022-04-27 13:40:17,612 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:40:17,613 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 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-27 13:40:17,613 INFO L74 IsIncluded]: Start isIncluded. First operand 74 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-27 13:40:17,613 INFO L87 Difference]: Start difference. First operand 74 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-27 13:40:17,615 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:40:17,615 INFO L93 Difference]: Finished difference Result 74 states and 94 transitions. [2022-04-27 13:40:17,615 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 94 transitions. [2022-04-27 13:40:17,616 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:40:17,616 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:40:17,616 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 74 states. [2022-04-27 13:40:17,616 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 74 states. [2022-04-27 13:40:17,618 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:40:17,618 INFO L93 Difference]: Finished difference Result 74 states and 94 transitions. [2022-04-27 13:40:17,618 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 94 transitions. [2022-04-27 13:40:17,618 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:40:17,618 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:40:17,618 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:40:17,619 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:40:17,619 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-27 13:40:17,622 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 89 transitions. [2022-04-27 13:40:17,622 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 89 transitions. Word has length 55 [2022-04-27 13:40:17,622 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:40:17,622 INFO L495 AbstractCegarLoop]: Abstraction has 71 states and 89 transitions. [2022-04-27 13:40:17,622 INFO L496 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-27 13:40:17,622 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 89 transitions. [2022-04-27 13:40:17,623 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-27 13:40:17,623 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:40:17,623 INFO L195 NwaCegarLoop]: 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-27 13:40:17,631 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-27 13:40:17,823 WARN L477 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-27 13:40:17,824 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:40:17,824 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:40:17,824 INFO L85 PathProgramCache]: Analyzing trace with hash -682689219, now seen corresponding path program 1 times [2022-04-27 13:40:17,824 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:40:17,825 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1327882780] [2022-04-27 13:40:17,825 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:40:17,825 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:40:17,834 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:40:17,834 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2016470118] [2022-04-27 13:40:17,834 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:40:17,834 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:40:17,834 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:40:17,835 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-27 13:40:17,836 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-27 13:40:17,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:40:17,889 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-27 13:40:17,899 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:40:17,900 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:40:20,207 INFO L272 TraceCheckUtils]: 0: Hoare triple {2489#true} call ULTIMATE.init(); {2489#true} is VALID [2022-04-27 13:40:20,207 INFO L290 TraceCheckUtils]: 1: Hoare triple {2489#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); {2489#true} is VALID [2022-04-27 13:40:20,207 INFO L290 TraceCheckUtils]: 2: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:20,207 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2489#true} {2489#true} #101#return; {2489#true} is VALID [2022-04-27 13:40:20,207 INFO L272 TraceCheckUtils]: 4: Hoare triple {2489#true} call #t~ret6 := main(); {2489#true} is VALID [2022-04-27 13:40:20,208 INFO L290 TraceCheckUtils]: 5: Hoare triple {2489#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; {2489#true} is VALID [2022-04-27 13:40:20,208 INFO L272 TraceCheckUtils]: 6: Hoare triple {2489#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 5 then 1 else 0)); {2489#true} is VALID [2022-04-27 13:40:20,208 INFO L290 TraceCheckUtils]: 7: Hoare triple {2489#true} ~cond := #in~cond; {2489#true} is VALID [2022-04-27 13:40:20,208 INFO L290 TraceCheckUtils]: 8: Hoare triple {2489#true} assume !(0 == ~cond); {2489#true} is VALID [2022-04-27 13:40:20,208 INFO L290 TraceCheckUtils]: 9: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:20,208 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2489#true} {2489#true} #81#return; {2489#true} is VALID [2022-04-27 13:40:20,208 INFO L290 TraceCheckUtils]: 11: Hoare triple {2489#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2489#true} is VALID [2022-04-27 13:40:20,208 INFO L272 TraceCheckUtils]: 12: Hoare triple {2489#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 5 then 1 else 0)); {2489#true} is VALID [2022-04-27 13:40:20,211 INFO L290 TraceCheckUtils]: 13: Hoare triple {2489#true} ~cond := #in~cond; {2533#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:40:20,212 INFO L290 TraceCheckUtils]: 14: Hoare triple {2533#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2537#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:40:20,212 INFO L290 TraceCheckUtils]: 15: Hoare triple {2537#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2537#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:40:20,213 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2537#(not (= |assume_abort_if_not_#in~cond| 0))} {2489#true} #83#return; {2544#(<= (mod main_~B~0 4294967296) 5)} is VALID [2022-04-27 13:40:20,213 INFO L272 TraceCheckUtils]: 17: Hoare triple {2544#(<= (mod main_~B~0 4294967296) 5)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2489#true} is VALID [2022-04-27 13:40:20,213 INFO L290 TraceCheckUtils]: 18: Hoare triple {2489#true} ~cond := #in~cond; {2489#true} is VALID [2022-04-27 13:40:20,213 INFO L290 TraceCheckUtils]: 19: Hoare triple {2489#true} assume !(0 == ~cond); {2489#true} is VALID [2022-04-27 13:40:20,213 INFO L290 TraceCheckUtils]: 20: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:20,214 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2489#true} {2544#(<= (mod main_~B~0 4294967296) 5)} #85#return; {2544#(<= (mod main_~B~0 4294967296) 5)} is VALID [2022-04-27 13:40:20,214 INFO L290 TraceCheckUtils]: 22: Hoare triple {2544#(<= (mod main_~B~0 4294967296) 5)} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {2563#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} is VALID [2022-04-27 13:40:20,215 INFO L290 TraceCheckUtils]: 23: Hoare triple {2563#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} assume !false; {2563#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} is VALID [2022-04-27 13:40:20,215 INFO L272 TraceCheckUtils]: 24: Hoare triple {2563#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {2489#true} is VALID [2022-04-27 13:40:20,215 INFO L290 TraceCheckUtils]: 25: Hoare triple {2489#true} ~cond := #in~cond; {2489#true} is VALID [2022-04-27 13:40:20,215 INFO L290 TraceCheckUtils]: 26: Hoare triple {2489#true} assume !(0 == ~cond); {2489#true} is VALID [2022-04-27 13:40:20,215 INFO L290 TraceCheckUtils]: 27: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:20,216 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2489#true} {2563#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} #87#return; {2563#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} is VALID [2022-04-27 13:40:20,216 INFO L272 TraceCheckUtils]: 29: Hoare triple {2563#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {2489#true} is VALID [2022-04-27 13:40:20,216 INFO L290 TraceCheckUtils]: 30: Hoare triple {2489#true} ~cond := #in~cond; {2489#true} is VALID [2022-04-27 13:40:20,216 INFO L290 TraceCheckUtils]: 31: Hoare triple {2489#true} assume !(0 == ~cond); {2489#true} is VALID [2022-04-27 13:40:20,216 INFO L290 TraceCheckUtils]: 32: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:20,216 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2489#true} {2563#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} #89#return; {2563#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} is VALID [2022-04-27 13:40:20,216 INFO L272 TraceCheckUtils]: 34: Hoare triple {2563#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {2489#true} is VALID [2022-04-27 13:40:20,216 INFO L290 TraceCheckUtils]: 35: Hoare triple {2489#true} ~cond := #in~cond; {2489#true} is VALID [2022-04-27 13:40:20,216 INFO L290 TraceCheckUtils]: 36: Hoare triple {2489#true} assume !(0 == ~cond); {2489#true} is VALID [2022-04-27 13:40:20,217 INFO L290 TraceCheckUtils]: 37: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:20,217 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2489#true} {2563#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} #91#return; {2563#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} is VALID [2022-04-27 13:40:20,218 INFO L290 TraceCheckUtils]: 39: Hoare triple {2563#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} assume !(~r~0 % 4294967296 >= ~d~0 % 4294967296); {2615#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} is VALID [2022-04-27 13:40:20,218 INFO L290 TraceCheckUtils]: 40: Hoare triple {2615#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} assume !false; {2615#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} is VALID [2022-04-27 13:40:20,218 INFO L272 TraceCheckUtils]: 41: Hoare triple {2615#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} call __VERIFIER_assert((if ~A~0 % 4294967296 == (~q~0 * ~B~0 + ~r~0) % 4294967296 then 1 else 0)); {2489#true} is VALID [2022-04-27 13:40:20,218 INFO L290 TraceCheckUtils]: 42: Hoare triple {2489#true} ~cond := #in~cond; {2489#true} is VALID [2022-04-27 13:40:20,218 INFO L290 TraceCheckUtils]: 43: Hoare triple {2489#true} assume !(0 == ~cond); {2489#true} is VALID [2022-04-27 13:40:20,218 INFO L290 TraceCheckUtils]: 44: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:20,220 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2489#true} {2615#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} #93#return; {2615#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} is VALID [2022-04-27 13:40:20,220 INFO L272 TraceCheckUtils]: 46: Hoare triple {2615#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {2489#true} is VALID [2022-04-27 13:40:20,220 INFO L290 TraceCheckUtils]: 47: Hoare triple {2489#true} ~cond := #in~cond; {2489#true} is VALID [2022-04-27 13:40:20,220 INFO L290 TraceCheckUtils]: 48: Hoare triple {2489#true} assume !(0 == ~cond); {2489#true} is VALID [2022-04-27 13:40:20,220 INFO L290 TraceCheckUtils]: 49: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:20,220 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2489#true} {2615#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} #95#return; {2615#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} is VALID [2022-04-27 13:40:20,221 INFO L290 TraceCheckUtils]: 51: Hoare triple {2615#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} assume !(1 != ~p~0 % 4294967296); {2615#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} is VALID [2022-04-27 13:40:20,222 INFO L272 TraceCheckUtils]: 52: Hoare triple {2615#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 5))} call __VERIFIER_assert((if ~A~0 % 4294967296 == (~d~0 * ~q~0 + ~r~0) % 4294967296 then 1 else 0)); {2655#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:40:20,222 INFO L290 TraceCheckUtils]: 53: Hoare triple {2655#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2659#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:40:20,222 INFO L290 TraceCheckUtils]: 54: Hoare triple {2659#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2490#false} is VALID [2022-04-27 13:40:20,222 INFO L290 TraceCheckUtils]: 55: Hoare triple {2490#false} assume !false; {2490#false} is VALID [2022-04-27 13:40:20,223 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-27 13:40:20,223 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:40:21,720 INFO L290 TraceCheckUtils]: 55: Hoare triple {2490#false} assume !false; {2490#false} is VALID [2022-04-27 13:40:21,721 INFO L290 TraceCheckUtils]: 54: Hoare triple {2659#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2490#false} is VALID [2022-04-27 13:40:21,721 INFO L290 TraceCheckUtils]: 53: Hoare triple {2655#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2659#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:40:21,722 INFO L272 TraceCheckUtils]: 52: Hoare triple {2675#(= (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)); {2655#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:40:21,722 INFO L290 TraceCheckUtils]: 51: Hoare triple {2675#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} assume !(1 != ~p~0 % 4294967296); {2675#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} is VALID [2022-04-27 13:40:21,723 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2489#true} {2675#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} #95#return; {2675#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} is VALID [2022-04-27 13:40:21,723 INFO L290 TraceCheckUtils]: 49: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:21,724 INFO L290 TraceCheckUtils]: 48: Hoare triple {2489#true} assume !(0 == ~cond); {2489#true} is VALID [2022-04-27 13:40:21,724 INFO L290 TraceCheckUtils]: 47: Hoare triple {2489#true} ~cond := #in~cond; {2489#true} is VALID [2022-04-27 13:40:21,724 INFO L272 TraceCheckUtils]: 46: Hoare triple {2675#(= (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)); {2489#true} is VALID [2022-04-27 13:40:21,725 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2489#true} {2675#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} #93#return; {2675#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} is VALID [2022-04-27 13:40:21,725 INFO L290 TraceCheckUtils]: 44: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:21,725 INFO L290 TraceCheckUtils]: 43: Hoare triple {2489#true} assume !(0 == ~cond); {2489#true} is VALID [2022-04-27 13:40:21,725 INFO L290 TraceCheckUtils]: 42: Hoare triple {2489#true} ~cond := #in~cond; {2489#true} is VALID [2022-04-27 13:40:21,725 INFO L272 TraceCheckUtils]: 41: Hoare triple {2675#(= (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)); {2489#true} is VALID [2022-04-27 13:40:21,725 INFO L290 TraceCheckUtils]: 40: Hoare triple {2675#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} assume !false; {2675#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} is VALID [2022-04-27 13:40:21,726 INFO L290 TraceCheckUtils]: 39: Hoare triple {2715#(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); {2675#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} is VALID [2022-04-27 13:40:21,726 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2489#true} {2715#(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; {2715#(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-27 13:40:21,726 INFO L290 TraceCheckUtils]: 37: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:21,726 INFO L290 TraceCheckUtils]: 36: Hoare triple {2489#true} assume !(0 == ~cond); {2489#true} is VALID [2022-04-27 13:40:21,726 INFO L290 TraceCheckUtils]: 35: Hoare triple {2489#true} ~cond := #in~cond; {2489#true} is VALID [2022-04-27 13:40:21,726 INFO L272 TraceCheckUtils]: 34: Hoare triple {2715#(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)); {2489#true} is VALID [2022-04-27 13:40:21,727 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2489#true} {2715#(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; {2715#(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-27 13:40:21,727 INFO L290 TraceCheckUtils]: 32: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:21,727 INFO L290 TraceCheckUtils]: 31: Hoare triple {2489#true} assume !(0 == ~cond); {2489#true} is VALID [2022-04-27 13:40:21,727 INFO L290 TraceCheckUtils]: 30: Hoare triple {2489#true} ~cond := #in~cond; {2489#true} is VALID [2022-04-27 13:40:21,729 INFO L272 TraceCheckUtils]: 29: Hoare triple {2715#(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)); {2489#true} is VALID [2022-04-27 13:40:21,730 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2489#true} {2715#(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; {2715#(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-27 13:40:21,730 INFO L290 TraceCheckUtils]: 27: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:21,730 INFO L290 TraceCheckUtils]: 26: Hoare triple {2489#true} assume !(0 == ~cond); {2489#true} is VALID [2022-04-27 13:40:21,730 INFO L290 TraceCheckUtils]: 25: Hoare triple {2489#true} ~cond := #in~cond; {2489#true} is VALID [2022-04-27 13:40:21,730 INFO L272 TraceCheckUtils]: 24: Hoare triple {2715#(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)); {2489#true} is VALID [2022-04-27 13:40:21,730 INFO L290 TraceCheckUtils]: 23: Hoare triple {2715#(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; {2715#(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-27 13:40:21,731 INFO L290 TraceCheckUtils]: 22: Hoare triple {2489#true} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {2715#(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-27 13:40:21,731 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2489#true} {2489#true} #85#return; {2489#true} is VALID [2022-04-27 13:40:21,731 INFO L290 TraceCheckUtils]: 20: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:21,731 INFO L290 TraceCheckUtils]: 19: Hoare triple {2489#true} assume !(0 == ~cond); {2489#true} is VALID [2022-04-27 13:40:21,731 INFO L290 TraceCheckUtils]: 18: Hoare triple {2489#true} ~cond := #in~cond; {2489#true} is VALID [2022-04-27 13:40:21,731 INFO L272 TraceCheckUtils]: 17: Hoare triple {2489#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2489#true} is VALID [2022-04-27 13:40:21,731 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2489#true} {2489#true} #83#return; {2489#true} is VALID [2022-04-27 13:40:21,732 INFO L290 TraceCheckUtils]: 15: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:21,732 INFO L290 TraceCheckUtils]: 14: Hoare triple {2489#true} assume !(0 == ~cond); {2489#true} is VALID [2022-04-27 13:40:21,732 INFO L290 TraceCheckUtils]: 13: Hoare triple {2489#true} ~cond := #in~cond; {2489#true} is VALID [2022-04-27 13:40:21,732 INFO L272 TraceCheckUtils]: 12: Hoare triple {2489#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 5 then 1 else 0)); {2489#true} is VALID [2022-04-27 13:40:21,732 INFO L290 TraceCheckUtils]: 11: Hoare triple {2489#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2489#true} is VALID [2022-04-27 13:40:21,732 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2489#true} {2489#true} #81#return; {2489#true} is VALID [2022-04-27 13:40:21,732 INFO L290 TraceCheckUtils]: 9: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:21,732 INFO L290 TraceCheckUtils]: 8: Hoare triple {2489#true} assume !(0 == ~cond); {2489#true} is VALID [2022-04-27 13:40:21,732 INFO L290 TraceCheckUtils]: 7: Hoare triple {2489#true} ~cond := #in~cond; {2489#true} is VALID [2022-04-27 13:40:21,732 INFO L272 TraceCheckUtils]: 6: Hoare triple {2489#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 5 then 1 else 0)); {2489#true} is VALID [2022-04-27 13:40:21,732 INFO L290 TraceCheckUtils]: 5: Hoare triple {2489#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; {2489#true} is VALID [2022-04-27 13:40:21,732 INFO L272 TraceCheckUtils]: 4: Hoare triple {2489#true} call #t~ret6 := main(); {2489#true} is VALID [2022-04-27 13:40:21,733 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2489#true} {2489#true} #101#return; {2489#true} is VALID [2022-04-27 13:40:21,733 INFO L290 TraceCheckUtils]: 2: Hoare triple {2489#true} assume true; {2489#true} is VALID [2022-04-27 13:40:21,733 INFO L290 TraceCheckUtils]: 1: Hoare triple {2489#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); {2489#true} is VALID [2022-04-27 13:40:21,733 INFO L272 TraceCheckUtils]: 0: Hoare triple {2489#true} call ULTIMATE.init(); {2489#true} is VALID [2022-04-27 13:40:21,734 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-27 13:40:21,734 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:40:21,734 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1327882780] [2022-04-27 13:40:21,734 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:40:21,734 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2016470118] [2022-04-27 13:40:21,734 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2016470118] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 13:40:21,734 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:40:21,734 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-27 13:40:21,734 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [21999805] [2022-04-27 13:40:21,735 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:40:21,736 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-27 13:40:21,736 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:40:21,737 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-27 13:40:21,772 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-27 13:40:21,772 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 13:40:21,772 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:40:21,772 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 13:40:21,772 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:40:21,772 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-27 13:40:30,329 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:40:30,330 INFO L93 Difference]: Finished difference Result 77 states and 94 transitions. [2022-04-27 13:40:30,330 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:40:30,330 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-27 13:40:30,331 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:40:30,331 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-27 13:40:30,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-27 13:40:30,334 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-27 13:40:30,335 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-27 13:40:30,335 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-27 13:40:30,404 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-27 13:40:30,406 INFO L225 Difference]: With dead ends: 77 [2022-04-27 13:40:30,406 INFO L226 Difference]: Without dead ends: 70 [2022-04-27 13:40:30,406 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 112 GetRequests, 101 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=29, Invalid=103, Unknown=0, NotChecked=0, Total=132 [2022-04-27 13:40:30,408 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 9 mSDsluCounter, 131 mSDsCounter, 0 mSdLazyCounter, 60 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 177 SdHoareTripleChecker+Invalid, 63 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 60 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.5s IncrementalHoareTripleChecker+Time [2022-04-27 13:40:30,408 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 177 Invalid, 63 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 60 Invalid, 0 Unknown, 0 Unchecked, 2.5s Time] [2022-04-27 13:40:30,410 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-27 13:40:30,431 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2022-04-27 13:40:30,431 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:40:30,432 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-27 13:40:30,432 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-27 13:40:30,434 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-27 13:40:30,436 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:40:30,436 INFO L93 Difference]: Finished difference Result 70 states and 87 transitions. [2022-04-27 13:40:30,436 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 87 transitions. [2022-04-27 13:40:30,438 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:40:30,438 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:40:30,438 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-27 13:40:30,438 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-27 13:40:30,442 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:40:30,442 INFO L93 Difference]: Finished difference Result 70 states and 87 transitions. [2022-04-27 13:40:30,442 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 87 transitions. [2022-04-27 13:40:30,443 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:40:30,443 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:40:30,443 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:40:30,443 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:40:30,443 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-27 13:40:30,446 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 87 transitions. [2022-04-27 13:40:30,446 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 87 transitions. Word has length 56 [2022-04-27 13:40:30,446 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:40:30,446 INFO L495 AbstractCegarLoop]: Abstraction has 70 states and 87 transitions. [2022-04-27 13:40:30,446 INFO L496 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-27 13:40:30,446 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 87 transitions. [2022-04-27 13:40:30,447 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-27 13:40:30,447 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:40:30,447 INFO L195 NwaCegarLoop]: 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-27 13:40:30,464 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-27 13:40:30,659 WARN L477 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-27 13:40:30,659 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:40:30,660 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:40:30,660 INFO L85 PathProgramCache]: Analyzing trace with hash 1586192473, now seen corresponding path program 1 times [2022-04-27 13:40:30,660 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:40:30,660 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [554686838] [2022-04-27 13:40:30,660 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:40:30,660 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:40:30,684 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:40:30,684 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1917874440] [2022-04-27 13:40:30,684 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:40:30,684 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:40:30,684 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:40:30,689 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-27 13:40:30,690 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process