/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_valuebound2.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 13:38:23,939 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 13:38:23,941 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 13:38:23,987 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 13:38:23,987 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 13:38:23,988 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 13:38:23,989 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 13:38:23,990 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 13:38:23,991 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 13:38:23,991 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 13:38:23,992 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 13:38:23,993 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 13:38:23,993 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 13:38:23,996 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 13:38:23,997 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 13:38:23,998 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 13:38:23,998 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 13:38:23,999 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 13:38:24,003 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 13:38:24,006 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 13:38:24,008 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 13:38:24,008 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 13:38:24,009 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 13:38:24,011 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 13:38:24,012 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 13:38:24,016 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 13:38:24,017 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 13:38:24,017 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 13:38:24,017 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 13:38:24,017 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 13:38:24,018 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 13:38:24,018 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 13:38:24,019 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 13:38:24,020 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 13:38:24,020 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 13:38:24,021 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 13:38:24,021 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 13:38:24,021 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 13:38:24,021 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 13:38:24,021 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 13:38:24,022 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 13:38:24,022 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 13:38:24,023 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:38:24,046 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 13:38:24,046 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 13:38:24,046 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 13:38:24,046 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 13:38:24,047 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 13:38:24,047 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 13:38:24,047 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 13:38:24,047 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 13:38:24,047 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 13:38:24,048 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 13:38:24,048 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 13:38:24,048 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 13:38:24,048 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 13:38:24,048 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 13:38:24,048 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 13:38:24,048 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 13:38:24,049 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 13:38:24,049 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 13:38:24,049 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 13:38:24,049 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 13:38:24,050 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 13:38:24,050 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 13:38:24,050 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 13:38:24,050 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 13:38:24,050 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 13:38:24,050 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 13:38:24,050 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 13:38:24,050 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 13:38:24,050 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 13:38:24,050 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 13:38:24,050 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 13:38:24,051 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 13:38:24,051 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 13:38:24,051 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:38:24,241 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 13:38:24,266 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 13:38:24,268 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 13:38:24,269 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 13:38:24,269 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 13:38:24,270 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/hard-u_valuebound2.c [2022-04-27 13:38:24,316 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a9fef026a/a1572b456ae942b39721763722e40a87/FLAG9fa6e0a82 [2022-04-27 13:38:24,681 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 13:38:24,682 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/hard-u_valuebound2.c [2022-04-27 13:38:24,688 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a9fef026a/a1572b456ae942b39721763722e40a87/FLAG9fa6e0a82 [2022-04-27 13:38:24,697 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a9fef026a/a1572b456ae942b39721763722e40a87 [2022-04-27 13:38:24,700 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 13:38:24,701 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 13:38:24,702 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 13:38:24,702 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 13:38:24,704 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 13:38:24,708 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 01:38:24" (1/1) ... [2022-04-27 13:38:24,708 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@36b02a87 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:38:24, skipping insertion in model container [2022-04-27 13:38:24,709 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 01:38:24" (1/1) ... [2022-04-27 13:38:24,713 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 13:38:24,723 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 13:38:24,864 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/hard-u_valuebound2.c[537,550] [2022-04-27 13:38:24,876 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 13:38:24,881 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 13:38:24,894 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/hard-u_valuebound2.c[537,550] [2022-04-27 13:38:24,900 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 13:38:24,909 INFO L208 MainTranslator]: Completed translation [2022-04-27 13:38:24,909 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:38:24 WrapperNode [2022-04-27 13:38:24,909 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 13:38:24,910 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 13:38:24,910 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 13:38:24,910 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 13:38:24,916 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:38:24" (1/1) ... [2022-04-27 13:38:24,916 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:38:24" (1/1) ... [2022-04-27 13:38:24,920 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:38:24" (1/1) ... [2022-04-27 13:38:24,920 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:38:24" (1/1) ... [2022-04-27 13:38:24,924 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:38:24" (1/1) ... [2022-04-27 13:38:24,927 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:38:24" (1/1) ... [2022-04-27 13:38:24,928 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:38:24" (1/1) ... [2022-04-27 13:38:24,929 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 13:38:24,929 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 13:38:24,929 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 13:38:24,929 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 13:38:24,930 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:38:24" (1/1) ... [2022-04-27 13:38:24,938 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 13:38:24,947 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:38:24,955 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:38:24,979 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:38:24,991 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 13:38:24,992 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 13:38:24,992 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 13:38:24,992 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 13:38:24,993 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 13:38:24,993 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 13:38:24,994 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 13:38:24,994 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 13:38:24,994 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 13:38:24,994 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 13:38:24,994 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-27 13:38:24,994 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 13:38:24,994 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 13:38:24,994 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 13:38:24,994 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 13:38:24,994 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 13:38:24,994 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 13:38:24,994 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 13:38:24,994 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 13:38:24,995 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 13:38:25,075 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 13:38:25,076 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 13:38:25,198 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 13:38:25,202 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 13:38:25,202 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-27 13:38:25,203 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 01:38:25 BoogieIcfgContainer [2022-04-27 13:38:25,203 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 13:38:25,204 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 13:38:25,204 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 13:38:25,209 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 13:38:25,209 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 01:38:24" (1/3) ... [2022-04-27 13:38:25,209 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@153d084 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 01:38:25, skipping insertion in model container [2022-04-27 13:38:25,209 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:38:24" (2/3) ... [2022-04-27 13:38:25,210 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@153d084 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 01:38:25, skipping insertion in model container [2022-04-27 13:38:25,210 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 01:38:25" (3/3) ... [2022-04-27 13:38:25,210 INFO L111 eAbstractionObserver]: Analyzing ICFG hard-u_valuebound2.c [2022-04-27 13:38:25,219 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 13:38:25,220 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 13:38:25,255 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 13:38:25,259 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@7d55b92, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@5ae41c04 [2022-04-27 13:38:25,259 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 13:38:25,264 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:38:25,269 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-27 13:38:25,269 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:38:25,269 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:38:25,270 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:38:25,273 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:38:25,273 INFO L85 PathProgramCache]: Analyzing trace with hash -1784424332, now seen corresponding path program 1 times [2022-04-27 13:38:25,279 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:38:25,279 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [75487049] [2022-04-27 13:38:25,279 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:38:25,280 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:38:25,343 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:25,382 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 13:38:25,385 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:25,395 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:38:25,396 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-27 13:38:25,396 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {41#true} {41#true} #101#return; {41#true} is VALID [2022-04-27 13:38:25,396 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 13:38:25,398 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:25,402 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-27 13:38:25,403 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-27 13:38:25,403 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-27 13:38:25,403 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {41#true} #81#return; {42#false} is VALID [2022-04-27 13:38:25,404 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-27 13:38:25,405 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:25,419 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-27 13:38:25,419 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-27 13:38:25,419 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-27 13:38:25,420 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {42#false} #83#return; {42#false} is VALID [2022-04-27 13:38:25,420 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 13:38:25,421 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:25,433 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-27 13:38:25,434 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-27 13:38:25,434 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-27 13:38:25,434 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {42#false} #85#return; {42#false} is VALID [2022-04-27 13:38:25,435 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:38:25,435 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:38:25,435 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-27 13:38:25,436 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#true} {41#true} #101#return; {41#true} is VALID [2022-04-27 13:38:25,436 INFO L272 TraceCheckUtils]: 4: Hoare triple {41#true} call #t~ret6 := main(); {41#true} is VALID [2022-04-27 13:38:25,436 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:38:25,436 INFO L272 TraceCheckUtils]: 6: Hoare triple {41#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {41#true} is VALID [2022-04-27 13:38:25,436 INFO L290 TraceCheckUtils]: 7: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-27 13:38:25,437 INFO L290 TraceCheckUtils]: 8: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-27 13:38:25,437 INFO L290 TraceCheckUtils]: 9: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-27 13:38:25,437 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42#false} {41#true} #81#return; {42#false} is VALID [2022-04-27 13:38:25,437 INFO L290 TraceCheckUtils]: 11: Hoare triple {42#false} ~B~0 := #t~nondet5;havoc #t~nondet5; {42#false} is VALID [2022-04-27 13:38:25,437 INFO L272 TraceCheckUtils]: 12: Hoare triple {42#false} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {41#true} is VALID [2022-04-27 13:38:25,438 INFO L290 TraceCheckUtils]: 13: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-27 13:38:25,439 INFO L290 TraceCheckUtils]: 14: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-27 13:38:25,439 INFO L290 TraceCheckUtils]: 15: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-27 13:38:25,439 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {42#false} {42#false} #83#return; {42#false} is VALID [2022-04-27 13:38:25,440 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:38:25,440 INFO L290 TraceCheckUtils]: 18: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-27 13:38:25,443 INFO L290 TraceCheckUtils]: 19: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-27 13:38:25,443 INFO L290 TraceCheckUtils]: 20: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-27 13:38:25,444 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {42#false} {42#false} #85#return; {42#false} is VALID [2022-04-27 13:38:25,444 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:38:25,444 INFO L290 TraceCheckUtils]: 23: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-27 13:38:25,444 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:38:25,444 INFO L290 TraceCheckUtils]: 25: Hoare triple {42#false} ~cond := #in~cond; {42#false} is VALID [2022-04-27 13:38:25,444 INFO L290 TraceCheckUtils]: 26: Hoare triple {42#false} assume 0 == ~cond; {42#false} is VALID [2022-04-27 13:38:25,445 INFO L290 TraceCheckUtils]: 27: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-27 13:38:25,445 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:38:25,445 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:38:25,445 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [75487049] [2022-04-27 13:38:25,446 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [75487049] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:38:25,446 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:38:25,446 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 13:38:25,447 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1019488076] [2022-04-27 13:38:25,448 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:38:25,451 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:38:25,452 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:38:25,454 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:38:25,477 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:38:25,478 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 13:38:25,478 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:38:25,493 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 13:38:25,493 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 13:38:25,495 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:38:25,643 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:38:25,644 INFO L93 Difference]: Finished difference Result 69 states and 110 transitions. [2022-04-27 13:38:25,644 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 13:38:25,644 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:38:25,644 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:38:25,645 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:38:25,652 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-27 13:38:25,652 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:38:25,657 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-27 13:38:25,658 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 110 transitions. [2022-04-27 13:38:25,765 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:38:25,784 INFO L225 Difference]: With dead ends: 69 [2022-04-27 13:38:25,784 INFO L226 Difference]: Without dead ends: 33 [2022-04-27 13:38:25,787 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:38:25,790 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:38:25,792 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:38:25,803 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states. [2022-04-27 13:38:25,821 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 33. [2022-04-27 13:38:25,821 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:38:25,822 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:38:25,823 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:38:25,824 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:38:25,835 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:38:25,835 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-27 13:38:25,835 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-27 13:38:25,837 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:38:25,837 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:38:25,838 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:38:25,838 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:38:25,843 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:38:25,843 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-27 13:38:25,844 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-27 13:38:25,844 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:38:25,844 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:38:25,845 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:38:25,845 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:38:25,846 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:38:25,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 43 transitions. [2022-04-27 13:38:25,851 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 43 transitions. Word has length 28 [2022-04-27 13:38:25,851 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:38:25,852 INFO L495 AbstractCegarLoop]: Abstraction has 33 states and 43 transitions. [2022-04-27 13:38:25,852 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:38:25,852 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-27 13:38:25,853 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-27 13:38:25,853 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:38:25,854 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:38:25,854 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 13:38:25,854 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:38:25,855 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:38:25,855 INFO L85 PathProgramCache]: Analyzing trace with hash 1361835634, now seen corresponding path program 1 times [2022-04-27 13:38:25,855 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:38:25,855 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1639636083] [2022-04-27 13:38:25,855 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:38:25,855 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:38:25,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:25,934 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 13:38:25,936 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:25,946 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:38:25,947 INFO L290 TraceCheckUtils]: 1: Hoare triple {275#true} assume true; {275#true} is VALID [2022-04-27 13:38:25,947 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {275#true} {275#true} #101#return; {275#true} is VALID [2022-04-27 13:38:25,947 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 13:38:25,948 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:25,960 INFO L290 TraceCheckUtils]: 0: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-04-27 13:38:25,960 INFO L290 TraceCheckUtils]: 1: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-04-27 13:38:25,960 INFO L290 TraceCheckUtils]: 2: Hoare triple {275#true} assume true; {275#true} is VALID [2022-04-27 13:38:25,960 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {275#true} {275#true} #81#return; {275#true} is VALID [2022-04-27 13:38:25,961 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-27 13:38:25,962 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:25,965 INFO L290 TraceCheckUtils]: 0: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-04-27 13:38:25,965 INFO L290 TraceCheckUtils]: 1: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-04-27 13:38:25,965 INFO L290 TraceCheckUtils]: 2: Hoare triple {275#true} assume true; {275#true} is VALID [2022-04-27 13:38:25,965 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {275#true} {275#true} #83#return; {275#true} is VALID [2022-04-27 13:38:25,965 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 13:38:25,966 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:25,971 INFO L290 TraceCheckUtils]: 0: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-04-27 13:38:25,971 INFO L290 TraceCheckUtils]: 1: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-04-27 13:38:25,971 INFO L290 TraceCheckUtils]: 2: Hoare triple {275#true} assume true; {275#true} is VALID [2022-04-27 13:38:25,971 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {275#true} {275#true} #85#return; {275#true} is VALID [2022-04-27 13:38:25,973 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:38:25,973 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:38:25,973 INFO L290 TraceCheckUtils]: 2: Hoare triple {275#true} assume true; {275#true} is VALID [2022-04-27 13:38:25,974 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {275#true} {275#true} #101#return; {275#true} is VALID [2022-04-27 13:38:25,974 INFO L272 TraceCheckUtils]: 4: Hoare triple {275#true} call #t~ret6 := main(); {275#true} is VALID [2022-04-27 13:38:25,974 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:38:25,974 INFO L272 TraceCheckUtils]: 6: Hoare triple {275#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {275#true} is VALID [2022-04-27 13:38:25,974 INFO L290 TraceCheckUtils]: 7: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-04-27 13:38:25,974 INFO L290 TraceCheckUtils]: 8: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-04-27 13:38:25,974 INFO L290 TraceCheckUtils]: 9: Hoare triple {275#true} assume true; {275#true} is VALID [2022-04-27 13:38:25,974 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {275#true} {275#true} #81#return; {275#true} is VALID [2022-04-27 13:38:25,975 INFO L290 TraceCheckUtils]: 11: Hoare triple {275#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {275#true} is VALID [2022-04-27 13:38:25,975 INFO L272 TraceCheckUtils]: 12: Hoare triple {275#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {275#true} is VALID [2022-04-27 13:38:25,975 INFO L290 TraceCheckUtils]: 13: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-04-27 13:38:25,975 INFO L290 TraceCheckUtils]: 14: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-04-27 13:38:25,975 INFO L290 TraceCheckUtils]: 15: Hoare triple {275#true} assume true; {275#true} is VALID [2022-04-27 13:38:25,975 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {275#true} {275#true} #83#return; {275#true} is VALID [2022-04-27 13:38:25,975 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:38:25,975 INFO L290 TraceCheckUtils]: 18: Hoare triple {275#true} ~cond := #in~cond; {275#true} is VALID [2022-04-27 13:38:25,976 INFO L290 TraceCheckUtils]: 19: Hoare triple {275#true} assume !(0 == ~cond); {275#true} is VALID [2022-04-27 13:38:25,976 INFO L290 TraceCheckUtils]: 20: Hoare triple {275#true} assume true; {275#true} is VALID [2022-04-27 13:38:25,976 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {275#true} {275#true} #85#return; {275#true} is VALID [2022-04-27 13:38:25,980 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:38:25,980 INFO L290 TraceCheckUtils]: 23: Hoare triple {292#(= main_~q~0 0)} assume !false; {292#(= main_~q~0 0)} is VALID [2022-04-27 13:38:25,980 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:38:25,981 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:38:25,981 INFO L290 TraceCheckUtils]: 26: Hoare triple {294#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {276#false} is VALID [2022-04-27 13:38:25,981 INFO L290 TraceCheckUtils]: 27: Hoare triple {276#false} assume !false; {276#false} is VALID [2022-04-27 13:38:25,982 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:38:25,982 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:38:25,982 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1639636083] [2022-04-27 13:38:25,982 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1639636083] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:38:25,982 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:38:25,982 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 13:38:25,982 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1973194075] [2022-04-27 13:38:25,982 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:38:25,983 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:38:25,983 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:38:25,984 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:38:25,996 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:38:25,997 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 13:38:25,997 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:38:25,997 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 13:38:25,997 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 13:38:25,997 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:38:26,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:38:26,354 INFO L93 Difference]: Finished difference Result 46 states and 60 transitions. [2022-04-27 13:38:26,355 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-27 13:38:26,355 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:38:26,355 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:38:26,356 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:38:26,363 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-27 13:38:26,363 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:38:26,364 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-27 13:38:26,364 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 60 transitions. [2022-04-27 13:38:26,437 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:38:26,440 INFO L225 Difference]: With dead ends: 46 [2022-04-27 13:38:26,440 INFO L226 Difference]: Without dead ends: 44 [2022-04-27 13:38:26,443 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:38:26,446 INFO L413 NwaCegarLoop]: 31 mSDtfsCounter, 38 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 126 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s 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.1s IncrementalHoareTripleChecker+Time [2022-04-27 13:38:26,448 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.1s Time] [2022-04-27 13:38:26,449 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-27 13:38:26,458 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 37. [2022-04-27 13:38:26,458 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:38:26,458 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:38:26,459 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:38:26,460 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:38:26,465 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:38:26,465 INFO L93 Difference]: Finished difference Result 44 states and 58 transitions. [2022-04-27 13:38:26,465 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 58 transitions. [2022-04-27 13:38:26,470 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:38:26,470 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:38:26,470 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:38:26,471 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:38:26,476 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:38:26,476 INFO L93 Difference]: Finished difference Result 44 states and 58 transitions. [2022-04-27 13:38:26,476 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 58 transitions. [2022-04-27 13:38:26,477 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:38:26,477 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:38:26,477 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:38:26,477 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:38:26,477 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:38:26,478 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 46 transitions. [2022-04-27 13:38:26,478 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 46 transitions. Word has length 28 [2022-04-27 13:38:26,479 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:38:26,479 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 46 transitions. [2022-04-27 13:38:26,479 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:38:26,479 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 46 transitions. [2022-04-27 13:38:26,479 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-27 13:38:26,479 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:38:26,479 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:38:26,480 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-27 13:38:26,480 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:38:26,480 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:38:26,480 INFO L85 PathProgramCache]: Analyzing trace with hash 1382067636, now seen corresponding path program 1 times [2022-04-27 13:38:26,480 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:38:26,480 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1740680529] [2022-04-27 13:38:26,480 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:38:26,481 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:38:26,529 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:26,622 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 13:38:26,627 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:26,638 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:38:26,639 INFO L290 TraceCheckUtils]: 1: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:38:26,640 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {517#true} {517#true} #101#return; {517#true} is VALID [2022-04-27 13:38:26,640 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 13:38:26,640 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:26,648 INFO L290 TraceCheckUtils]: 0: Hoare triple {517#true} ~cond := #in~cond; {517#true} is VALID [2022-04-27 13:38:26,648 INFO L290 TraceCheckUtils]: 1: Hoare triple {517#true} assume !(0 == ~cond); {517#true} is VALID [2022-04-27 13:38:26,648 INFO L290 TraceCheckUtils]: 2: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:38:26,648 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {517#true} {517#true} #81#return; {517#true} is VALID [2022-04-27 13:38:26,649 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-27 13:38:26,649 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:26,653 INFO L290 TraceCheckUtils]: 0: Hoare triple {517#true} ~cond := #in~cond; {517#true} is VALID [2022-04-27 13:38:26,653 INFO L290 TraceCheckUtils]: 1: Hoare triple {517#true} assume !(0 == ~cond); {517#true} is VALID [2022-04-27 13:38:26,653 INFO L290 TraceCheckUtils]: 2: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:38:26,653 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {517#true} {517#true} #83#return; {517#true} is VALID [2022-04-27 13:38:26,653 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 13:38:26,654 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:26,658 INFO L290 TraceCheckUtils]: 0: Hoare triple {517#true} ~cond := #in~cond; {517#true} is VALID [2022-04-27 13:38:26,658 INFO L290 TraceCheckUtils]: 1: Hoare triple {517#true} assume !(0 == ~cond); {517#true} is VALID [2022-04-27 13:38:26,658 INFO L290 TraceCheckUtils]: 2: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:38:26,658 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {517#true} {517#true} #85#return; {517#true} is VALID [2022-04-27 13:38:26,658 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2022-04-27 13:38:26,661 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:26,671 INFO L290 TraceCheckUtils]: 0: Hoare triple {517#true} ~cond := #in~cond; {517#true} is VALID [2022-04-27 13:38:26,671 INFO L290 TraceCheckUtils]: 1: Hoare triple {517#true} assume !(0 == ~cond); {517#true} is VALID [2022-04-27 13:38:26,671 INFO L290 TraceCheckUtils]: 2: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:38:26,672 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:38:26,672 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:38:26,672 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:38:26,672 INFO L290 TraceCheckUtils]: 2: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:38:26,673 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {517#true} {517#true} #101#return; {517#true} is VALID [2022-04-27 13:38:26,673 INFO L272 TraceCheckUtils]: 4: Hoare triple {517#true} call #t~ret6 := main(); {517#true} is VALID [2022-04-27 13:38:26,673 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:38:26,673 INFO L272 TraceCheckUtils]: 6: Hoare triple {517#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {517#true} is VALID [2022-04-27 13:38:26,673 INFO L290 TraceCheckUtils]: 7: Hoare triple {517#true} ~cond := #in~cond; {517#true} is VALID [2022-04-27 13:38:26,673 INFO L290 TraceCheckUtils]: 8: Hoare triple {517#true} assume !(0 == ~cond); {517#true} is VALID [2022-04-27 13:38:26,673 INFO L290 TraceCheckUtils]: 9: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:38:26,673 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {517#true} {517#true} #81#return; {517#true} is VALID [2022-04-27 13:38:26,673 INFO L290 TraceCheckUtils]: 11: Hoare triple {517#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {517#true} is VALID [2022-04-27 13:38:26,674 INFO L272 TraceCheckUtils]: 12: Hoare triple {517#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {517#true} is VALID [2022-04-27 13:38:26,674 INFO L290 TraceCheckUtils]: 13: Hoare triple {517#true} ~cond := #in~cond; {517#true} is VALID [2022-04-27 13:38:26,674 INFO L290 TraceCheckUtils]: 14: Hoare triple {517#true} assume !(0 == ~cond); {517#true} is VALID [2022-04-27 13:38:26,674 INFO L290 TraceCheckUtils]: 15: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:38:26,674 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {517#true} {517#true} #83#return; {517#true} is VALID [2022-04-27 13:38:26,674 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:38:26,674 INFO L290 TraceCheckUtils]: 18: Hoare triple {517#true} ~cond := #in~cond; {517#true} is VALID [2022-04-27 13:38:26,674 INFO L290 TraceCheckUtils]: 19: Hoare triple {517#true} assume !(0 == ~cond); {517#true} is VALID [2022-04-27 13:38:26,674 INFO L290 TraceCheckUtils]: 20: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:38:26,675 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {517#true} {517#true} #85#return; {517#true} is VALID [2022-04-27 13:38:26,675 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:38:26,675 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:38:26,675 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:38:26,675 INFO L290 TraceCheckUtils]: 25: Hoare triple {517#true} ~cond := #in~cond; {517#true} is VALID [2022-04-27 13:38:26,675 INFO L290 TraceCheckUtils]: 26: Hoare triple {517#true} assume !(0 == ~cond); {517#true} is VALID [2022-04-27 13:38:26,676 INFO L290 TraceCheckUtils]: 27: Hoare triple {517#true} assume true; {517#true} is VALID [2022-04-27 13:38:26,676 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:38:26,677 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:38:26,677 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:38:26,677 INFO L290 TraceCheckUtils]: 31: Hoare triple {540#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {518#false} is VALID [2022-04-27 13:38:26,677 INFO L290 TraceCheckUtils]: 32: Hoare triple {518#false} assume !false; {518#false} is VALID [2022-04-27 13:38:26,678 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:38:26,678 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:38:26,678 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1740680529] [2022-04-27 13:38:26,678 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1740680529] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:38:26,678 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:38:26,678 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 13:38:26,678 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1948229420] [2022-04-27 13:38:26,678 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:38:26,679 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:38:26,679 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:38:26,679 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:38:26,695 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:38:26,695 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 13:38:26,695 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:38:26,696 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 13:38:26,696 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 13:38:26,696 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:38:27,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:38:27,015 INFO L93 Difference]: Finished difference Result 50 states and 63 transitions. [2022-04-27 13:38:27,015 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-27 13:38:27,016 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:38:27,016 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:38:27,016 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:38:27,017 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-27 13:38:27,018 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:38:27,019 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 60 transitions. [2022-04-27 13:38:27,019 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 60 transitions. [2022-04-27 13:38:27,077 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:38:27,078 INFO L225 Difference]: With dead ends: 50 [2022-04-27 13:38:27,078 INFO L226 Difference]: Without dead ends: 48 [2022-04-27 13:38:27,079 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:38:27,080 INFO L413 NwaCegarLoop]: 31 mSDtfsCounter, 33 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 132 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s 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.1s IncrementalHoareTripleChecker+Time [2022-04-27 13:38:27,080 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.1s Time] [2022-04-27 13:38:27,080 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-27 13:38:27,084 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 41. [2022-04-27 13:38:27,084 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:38:27,084 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:38:27,084 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:38:27,085 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:38:27,086 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:38:27,086 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-27 13:38:27,087 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-27 13:38:27,087 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:38:27,087 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:38:27,087 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:38:27,087 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:38:27,089 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:38:27,089 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-27 13:38:27,089 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-27 13:38:27,089 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:38:27,089 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:38:27,089 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:38:27,089 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:38:27,090 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:38:27,091 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 49 transitions. [2022-04-27 13:38:27,091 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 49 transitions. Word has length 33 [2022-04-27 13:38:27,091 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:38:27,091 INFO L495 AbstractCegarLoop]: Abstraction has 41 states and 49 transitions. [2022-04-27 13:38:27,091 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:38:27,091 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 49 transitions. [2022-04-27 13:38:27,092 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-27 13:38:27,092 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:38:27,092 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:38:27,092 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-04-27 13:38:27,092 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:38:27,092 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:38:27,093 INFO L85 PathProgramCache]: Analyzing trace with hash -1455208590, now seen corresponding path program 1 times [2022-04-27 13:38:27,093 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:38:27,093 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1590291734] [2022-04-27 13:38:27,093 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:38:27,093 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:38:27,103 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:38:27,103 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1892126797] [2022-04-27 13:38:27,103 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:38:27,104 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:38:27,104 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:38:27,107 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:38:27,109 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:38:27,143 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:27,149 INFO L263 TraceCheckSpWp]: Trace formula consists of 106 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 13:38:27,170 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:27,173 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:38:27,356 INFO L272 TraceCheckUtils]: 0: Hoare triple {781#true} call ULTIMATE.init(); {781#true} is VALID [2022-04-27 13:38:27,356 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:38:27,356 INFO L290 TraceCheckUtils]: 2: Hoare triple {781#true} assume true; {781#true} is VALID [2022-04-27 13:38:27,356 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {781#true} {781#true} #101#return; {781#true} is VALID [2022-04-27 13:38:27,356 INFO L272 TraceCheckUtils]: 4: Hoare triple {781#true} call #t~ret6 := main(); {781#true} is VALID [2022-04-27 13:38:27,357 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:38:27,357 INFO L272 TraceCheckUtils]: 6: Hoare triple {781#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {781#true} is VALID [2022-04-27 13:38:27,357 INFO L290 TraceCheckUtils]: 7: Hoare triple {781#true} ~cond := #in~cond; {781#true} is VALID [2022-04-27 13:38:27,357 INFO L290 TraceCheckUtils]: 8: Hoare triple {781#true} assume !(0 == ~cond); {781#true} is VALID [2022-04-27 13:38:27,357 INFO L290 TraceCheckUtils]: 9: Hoare triple {781#true} assume true; {781#true} is VALID [2022-04-27 13:38:27,357 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {781#true} {781#true} #81#return; {781#true} is VALID [2022-04-27 13:38:27,357 INFO L290 TraceCheckUtils]: 11: Hoare triple {781#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {781#true} is VALID [2022-04-27 13:38:27,357 INFO L272 TraceCheckUtils]: 12: Hoare triple {781#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {781#true} is VALID [2022-04-27 13:38:27,357 INFO L290 TraceCheckUtils]: 13: Hoare triple {781#true} ~cond := #in~cond; {781#true} is VALID [2022-04-27 13:38:27,358 INFO L290 TraceCheckUtils]: 14: Hoare triple {781#true} assume !(0 == ~cond); {781#true} is VALID [2022-04-27 13:38:27,358 INFO L290 TraceCheckUtils]: 15: Hoare triple {781#true} assume true; {781#true} is VALID [2022-04-27 13:38:27,358 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {781#true} {781#true} #83#return; {781#true} is VALID [2022-04-27 13:38:27,358 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:38:27,358 INFO L290 TraceCheckUtils]: 18: Hoare triple {781#true} ~cond := #in~cond; {781#true} is VALID [2022-04-27 13:38:27,358 INFO L290 TraceCheckUtils]: 19: Hoare triple {781#true} assume !(0 == ~cond); {781#true} is VALID [2022-04-27 13:38:27,358 INFO L290 TraceCheckUtils]: 20: Hoare triple {781#true} assume true; {781#true} is VALID [2022-04-27 13:38:27,358 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {781#true} {781#true} #85#return; {781#true} is VALID [2022-04-27 13:38:27,359 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:38:27,359 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:38:27,359 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:38:27,359 INFO L290 TraceCheckUtils]: 25: Hoare triple {781#true} ~cond := #in~cond; {781#true} is VALID [2022-04-27 13:38:27,359 INFO L290 TraceCheckUtils]: 26: Hoare triple {781#true} assume !(0 == ~cond); {781#true} is VALID [2022-04-27 13:38:27,359 INFO L290 TraceCheckUtils]: 27: Hoare triple {781#true} assume true; {781#true} is VALID [2022-04-27 13:38:27,360 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:38:27,360 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:38:27,360 INFO L290 TraceCheckUtils]: 30: Hoare triple {781#true} ~cond := #in~cond; {781#true} is VALID [2022-04-27 13:38:27,360 INFO L290 TraceCheckUtils]: 31: Hoare triple {781#true} assume !(0 == ~cond); {781#true} is VALID [2022-04-27 13:38:27,360 INFO L290 TraceCheckUtils]: 32: Hoare triple {781#true} assume true; {781#true} is VALID [2022-04-27 13:38:27,361 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:38:27,361 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:38:27,365 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:38:27,365 INFO L290 TraceCheckUtils]: 36: Hoare triple {893#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {782#false} is VALID [2022-04-27 13:38:27,365 INFO L290 TraceCheckUtils]: 37: Hoare triple {782#false} assume !false; {782#false} is VALID [2022-04-27 13:38:27,365 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:38:27,365 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:38:27,366 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:38:27,366 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1590291734] [2022-04-27 13:38:27,366 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:38:27,366 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1892126797] [2022-04-27 13:38:27,366 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1892126797] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:38:27,366 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:38:27,366 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:38:27,366 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1500147897] [2022-04-27 13:38:27,366 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:38:27,367 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:38:27,367 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:38:27,367 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:38:27,384 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:38:27,384 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:38:27,384 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:38:27,385 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:38:27,385 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:38:27,385 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:38:29,499 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:38:29,711 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:38:29,711 INFO L93 Difference]: Finished difference Result 58 states and 73 transitions. [2022-04-27 13:38:29,711 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:38:29,711 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:38:29,712 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:38:29,712 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:38:29,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-27 13:38:29,713 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:38:29,714 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-27 13:38:29,714 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 67 transitions. [2022-04-27 13:38:29,767 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:38:29,768 INFO L225 Difference]: With dead ends: 58 [2022-04-27 13:38:29,768 INFO L226 Difference]: Without dead ends: 55 [2022-04-27 13:38:29,769 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:38:29,769 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:38:29,769 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:38:29,770 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-27 13:38:29,774 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 55. [2022-04-27 13:38:29,775 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:38:29,775 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:38:29,775 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:38:29,775 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:38:29,777 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:38:29,777 INFO L93 Difference]: Finished difference Result 55 states and 69 transitions. [2022-04-27 13:38:29,777 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 69 transitions. [2022-04-27 13:38:29,778 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:38:29,778 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:38:29,778 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:38:29,778 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:38:29,780 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:38:29,780 INFO L93 Difference]: Finished difference Result 55 states and 69 transitions. [2022-04-27 13:38:29,781 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 69 transitions. [2022-04-27 13:38:29,781 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:38:29,781 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:38:29,781 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:38:29,781 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:38:29,781 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:38:29,783 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 69 transitions. [2022-04-27 13:38:29,783 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 69 transitions. Word has length 38 [2022-04-27 13:38:29,783 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:38:29,783 INFO L495 AbstractCegarLoop]: Abstraction has 55 states and 69 transitions. [2022-04-27 13:38:29,783 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:38:29,783 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 69 transitions. [2022-04-27 13:38:29,784 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-27 13:38:29,784 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:38:29,784 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:38:29,801 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-27 13:38:29,999 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:38:30,000 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:38:30,000 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:38:30,000 INFO L85 PathProgramCache]: Analyzing trace with hash -1688067263, now seen corresponding path program 1 times [2022-04-27 13:38:30,000 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:38:30,000 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [314562891] [2022-04-27 13:38:30,000 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:38:30,000 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:38:30,020 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:38:30,020 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [268057795] [2022-04-27 13:38:30,020 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:38:30,020 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:38:30,021 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:38:30,023 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:38:30,024 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:38:30,068 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:30,069 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-27 13:38:30,079 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:30,080 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:38:31,349 INFO L272 TraceCheckUtils]: 0: Hoare triple {1179#true} call ULTIMATE.init(); {1179#true} is VALID [2022-04-27 13:38:31,349 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:38:31,349 INFO L290 TraceCheckUtils]: 2: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:38:31,349 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1179#true} {1179#true} #101#return; {1179#true} is VALID [2022-04-27 13:38:31,349 INFO L272 TraceCheckUtils]: 4: Hoare triple {1179#true} call #t~ret6 := main(); {1179#true} is VALID [2022-04-27 13:38:31,349 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:38:31,349 INFO L272 TraceCheckUtils]: 6: Hoare triple {1179#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:38:31,350 INFO L290 TraceCheckUtils]: 7: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:38:31,350 INFO L290 TraceCheckUtils]: 8: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:38:31,350 INFO L290 TraceCheckUtils]: 9: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:38:31,350 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1179#true} {1179#true} #81#return; {1179#true} is VALID [2022-04-27 13:38:31,350 INFO L290 TraceCheckUtils]: 11: Hoare triple {1179#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {1179#true} is VALID [2022-04-27 13:38:31,350 INFO L272 TraceCheckUtils]: 12: Hoare triple {1179#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:38:31,354 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:38:31,354 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:38:31,355 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:38:31,375 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) 2)} is VALID [2022-04-27 13:38:31,375 INFO L272 TraceCheckUtils]: 17: Hoare triple {1234#(<= (mod main_~B~0 4294967296) 2)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:38:31,375 INFO L290 TraceCheckUtils]: 18: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:38:31,375 INFO L290 TraceCheckUtils]: 19: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:38:31,376 INFO L290 TraceCheckUtils]: 20: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:38:31,378 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1179#true} {1234#(<= (mod main_~B~0 4294967296) 2)} #85#return; {1234#(<= (mod main_~B~0 4294967296) 2)} is VALID [2022-04-27 13:38:31,378 INFO L290 TraceCheckUtils]: 22: Hoare triple {1234#(<= (mod main_~B~0 4294967296) 2)} ~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) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} is VALID [2022-04-27 13:38:31,378 INFO L290 TraceCheckUtils]: 23: Hoare triple {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} assume !false; {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} is VALID [2022-04-27 13:38:31,379 INFO L272 TraceCheckUtils]: 24: Hoare triple {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:38:31,379 INFO L290 TraceCheckUtils]: 25: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:38:31,379 INFO L290 TraceCheckUtils]: 26: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:38:31,379 INFO L290 TraceCheckUtils]: 27: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:38:31,379 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1179#true} {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} #87#return; {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} is VALID [2022-04-27 13:38:31,380 INFO L272 TraceCheckUtils]: 29: Hoare triple {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:38:31,380 INFO L290 TraceCheckUtils]: 30: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:38:31,380 INFO L290 TraceCheckUtils]: 31: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:38:31,380 INFO L290 TraceCheckUtils]: 32: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:38:31,381 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1179#true} {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} #89#return; {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} is VALID [2022-04-27 13:38:31,381 INFO L272 TraceCheckUtils]: 34: Hoare triple {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:38:31,381 INFO L290 TraceCheckUtils]: 35: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:38:31,381 INFO L290 TraceCheckUtils]: 36: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:38:31,381 INFO L290 TraceCheckUtils]: 37: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:38:31,382 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1179#true} {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} #91#return; {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} is VALID [2022-04-27 13:38:31,391 INFO L290 TraceCheckUtils]: 39: Hoare triple {1253#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (= main_~q~0 0) (= main_~B~0 main_~d~0))} assume !(~r~0 % 4294967296 >= ~d~0 % 4294967296); {1305#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (not (<= (mod main_~B~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} is VALID [2022-04-27 13:38:31,392 INFO L290 TraceCheckUtils]: 40: Hoare triple {1305#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (not (<= (mod main_~B~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} assume !false; {1305#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (not (<= (mod main_~B~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} is VALID [2022-04-27 13:38:31,393 INFO L272 TraceCheckUtils]: 41: Hoare triple {1305#(and (= main_~A~0 main_~r~0) (<= (mod main_~B~0 4294967296) 2) (not (<= (mod main_~B~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == (~q~0 * ~B~0 + ~r~0) % 4294967296 then 1 else 0)); {1312#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:38:31,393 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:38:31,393 INFO L290 TraceCheckUtils]: 43: Hoare triple {1316#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1180#false} is VALID [2022-04-27 13:38:31,394 INFO L290 TraceCheckUtils]: 44: Hoare triple {1180#false} assume !false; {1180#false} is VALID [2022-04-27 13:38:31,394 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:38:31,394 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:38:31,816 INFO L290 TraceCheckUtils]: 44: Hoare triple {1180#false} assume !false; {1180#false} is VALID [2022-04-27 13:38:31,817 INFO L290 TraceCheckUtils]: 43: Hoare triple {1316#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1180#false} is VALID [2022-04-27 13:38:31,817 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:38:31,818 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:38:31,818 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:38:31,819 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:38:31,819 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:38:31,820 INFO L290 TraceCheckUtils]: 37: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:38:31,820 INFO L290 TraceCheckUtils]: 36: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:38:31,820 INFO L290 TraceCheckUtils]: 35: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:38:31,820 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:38:31,821 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:38:31,821 INFO L290 TraceCheckUtils]: 32: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:38:31,821 INFO L290 TraceCheckUtils]: 31: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:38:31,821 INFO L290 TraceCheckUtils]: 30: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:38:31,821 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:38:31,822 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:38:31,822 INFO L290 TraceCheckUtils]: 27: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:38:31,822 INFO L290 TraceCheckUtils]: 26: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:38:31,822 INFO L290 TraceCheckUtils]: 25: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:38:31,822 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:38:31,823 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:38:31,827 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:38:31,828 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1179#true} {1179#true} #85#return; {1179#true} is VALID [2022-04-27 13:38:31,828 INFO L290 TraceCheckUtils]: 20: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:38:31,828 INFO L290 TraceCheckUtils]: 19: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:38:31,828 INFO L290 TraceCheckUtils]: 18: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:38:31,828 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:38:31,828 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1179#true} {1179#true} #83#return; {1179#true} is VALID [2022-04-27 13:38:31,828 INFO L290 TraceCheckUtils]: 15: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:38:31,828 INFO L290 TraceCheckUtils]: 14: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:38:31,828 INFO L290 TraceCheckUtils]: 13: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:38:31,828 INFO L272 TraceCheckUtils]: 12: Hoare triple {1179#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:38:31,829 INFO L290 TraceCheckUtils]: 11: Hoare triple {1179#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {1179#true} is VALID [2022-04-27 13:38:31,829 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1179#true} {1179#true} #81#return; {1179#true} is VALID [2022-04-27 13:38:31,829 INFO L290 TraceCheckUtils]: 9: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:38:31,829 INFO L290 TraceCheckUtils]: 8: Hoare triple {1179#true} assume !(0 == ~cond); {1179#true} is VALID [2022-04-27 13:38:31,829 INFO L290 TraceCheckUtils]: 7: Hoare triple {1179#true} ~cond := #in~cond; {1179#true} is VALID [2022-04-27 13:38:31,829 INFO L272 TraceCheckUtils]: 6: Hoare triple {1179#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {1179#true} is VALID [2022-04-27 13:38:31,829 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:38:31,829 INFO L272 TraceCheckUtils]: 4: Hoare triple {1179#true} call #t~ret6 := main(); {1179#true} is VALID [2022-04-27 13:38:31,829 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1179#true} {1179#true} #101#return; {1179#true} is VALID [2022-04-27 13:38:31,829 INFO L290 TraceCheckUtils]: 2: Hoare triple {1179#true} assume true; {1179#true} is VALID [2022-04-27 13:38:31,829 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:38:31,829 INFO L272 TraceCheckUtils]: 0: Hoare triple {1179#true} call ULTIMATE.init(); {1179#true} is VALID [2022-04-27 13:38:31,830 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:38:31,830 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:38:31,830 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [314562891] [2022-04-27 13:38:31,830 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:38:31,830 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [268057795] [2022-04-27 13:38:31,830 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [268057795] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 13:38:31,830 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:38:31,830 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-27 13:38:31,830 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1981946969] [2022-04-27 13:38:31,830 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:38:31,831 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:38:31,831 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:38:31,831 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:38:31,856 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:38:31,856 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 13:38:31,856 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:38:31,857 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 13:38:31,857 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:38:31,857 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:38:34,146 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:38:34,290 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:38:34,291 INFO L93 Difference]: Finished difference Result 68 states and 86 transitions. [2022-04-27 13:38:34,291 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:38:34,291 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:38:34,291 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:38:34,291 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:38:34,292 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-27 13:38:34,292 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:38:34,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-27 13:38:34,293 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-04-27 13:38:34,349 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:38:34,351 INFO L225 Difference]: With dead ends: 68 [2022-04-27 13:38:34,351 INFO L226 Difference]: Without dead ends: 66 [2022-04-27 13:38:34,351 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:38:34,352 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:38:34,352 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:38:34,352 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2022-04-27 13:38:34,360 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 64. [2022-04-27 13:38:34,360 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:38:34,360 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:38:34,360 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:38:34,360 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:38:34,362 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:38:34,363 INFO L93 Difference]: Finished difference Result 66 states and 84 transitions. [2022-04-27 13:38:34,363 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 84 transitions. [2022-04-27 13:38:34,363 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:38:34,363 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:38:34,363 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:38:34,363 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:38:34,365 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:38:34,365 INFO L93 Difference]: Finished difference Result 66 states and 84 transitions. [2022-04-27 13:38:34,365 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 84 transitions. [2022-04-27 13:38:34,366 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:38:34,366 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:38:34,366 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:38:34,366 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:38:34,366 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:38:34,368 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 81 transitions. [2022-04-27 13:38:34,368 INFO L78 Accepts]: Start accepts. Automaton has 64 states and 81 transitions. Word has length 45 [2022-04-27 13:38:34,368 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:38:34,368 INFO L495 AbstractCegarLoop]: Abstraction has 64 states and 81 transitions. [2022-04-27 13:38:34,368 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:38:34,368 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 81 transitions. [2022-04-27 13:38:34,369 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-27 13:38:34,369 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:38:34,369 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:38:34,385 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-27 13:38:34,583 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:38:34,584 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:38:34,584 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:38:34,584 INFO L85 PathProgramCache]: Analyzing trace with hash -1471734606, now seen corresponding path program 1 times [2022-04-27 13:38:34,584 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:38:34,584 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1912132465] [2022-04-27 13:38:34,584 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:38:34,584 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:38:34,593 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:38:34,593 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [498036427] [2022-04-27 13:38:34,593 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:38:34,594 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:38:34,594 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:38:34,594 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:38:34,595 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:38:34,707 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:34,709 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-27 13:38:34,721 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:38:34,722 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:38:36,171 INFO L272 TraceCheckUtils]: 0: Hoare triple {1787#true} call ULTIMATE.init(); {1787#true} is VALID [2022-04-27 13:38:36,171 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:38:36,171 INFO L290 TraceCheckUtils]: 2: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:38:36,171 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1787#true} {1787#true} #101#return; {1787#true} is VALID [2022-04-27 13:38:36,172 INFO L272 TraceCheckUtils]: 4: Hoare triple {1787#true} call #t~ret6 := main(); {1787#true} is VALID [2022-04-27 13:38:36,172 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:38:36,172 INFO L272 TraceCheckUtils]: 6: Hoare triple {1787#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:38:36,172 INFO L290 TraceCheckUtils]: 7: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:38:36,172 INFO L290 TraceCheckUtils]: 8: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:38:36,172 INFO L290 TraceCheckUtils]: 9: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:38:36,172 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1787#true} {1787#true} #81#return; {1787#true} is VALID [2022-04-27 13:38:36,172 INFO L290 TraceCheckUtils]: 11: Hoare triple {1787#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {1787#true} is VALID [2022-04-27 13:38:36,172 INFO L272 TraceCheckUtils]: 12: Hoare triple {1787#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:38:36,173 INFO L290 TraceCheckUtils]: 13: Hoare triple {1787#true} ~cond := #in~cond; {1831#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:38:36,173 INFO L290 TraceCheckUtils]: 14: Hoare triple {1831#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1835#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:38:36,173 INFO L290 TraceCheckUtils]: 15: Hoare triple {1835#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1835#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:38:36,174 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1835#(not (= |assume_abort_if_not_#in~cond| 0))} {1787#true} #83#return; {1842#(<= (mod main_~B~0 4294967296) 2)} is VALID [2022-04-27 13:38:36,174 INFO L272 TraceCheckUtils]: 17: Hoare triple {1842#(<= (mod main_~B~0 4294967296) 2)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:38:36,174 INFO L290 TraceCheckUtils]: 18: Hoare triple {1787#true} ~cond := #in~cond; {1831#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:38:36,174 INFO L290 TraceCheckUtils]: 19: Hoare triple {1831#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1835#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:38:36,175 INFO L290 TraceCheckUtils]: 20: Hoare triple {1835#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1835#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:38:36,175 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1835#(not (= |assume_abort_if_not_#in~cond| 0))} {1842#(<= (mod main_~B~0 4294967296) 2)} #85#return; {1858#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-27 13:38:36,175 INFO L290 TraceCheckUtils]: 22: Hoare triple {1858#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)))} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {1862#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-27 13:38:36,176 INFO L290 TraceCheckUtils]: 23: Hoare triple {1862#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (= main_~B~0 main_~d~0) (= main_~p~0 1))} assume !false; {1862#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-27 13:38:36,176 INFO L272 TraceCheckUtils]: 24: Hoare triple {1862#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (= 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:38:36,176 INFO L290 TraceCheckUtils]: 25: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:38:36,176 INFO L290 TraceCheckUtils]: 26: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:38:36,176 INFO L290 TraceCheckUtils]: 27: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:38:36,179 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1787#true} {1862#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (= main_~B~0 main_~d~0) (= main_~p~0 1))} #87#return; {1862#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-27 13:38:36,179 INFO L272 TraceCheckUtils]: 29: Hoare triple {1862#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (= 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:38:36,179 INFO L290 TraceCheckUtils]: 30: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:38:36,180 INFO L290 TraceCheckUtils]: 31: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:38:36,180 INFO L290 TraceCheckUtils]: 32: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:38:36,180 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1787#true} {1862#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (= main_~B~0 main_~d~0) (= main_~p~0 1))} #89#return; {1862#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-27 13:38:36,180 INFO L272 TraceCheckUtils]: 34: Hoare triple {1862#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (= 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:38:36,180 INFO L290 TraceCheckUtils]: 35: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:38:36,181 INFO L290 TraceCheckUtils]: 36: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:38:36,181 INFO L290 TraceCheckUtils]: 37: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:38:36,181 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1787#true} {1862#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (= main_~B~0 main_~d~0) (= main_~p~0 1))} #91#return; {1862#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (= main_~B~0 main_~d~0) (= main_~p~0 1))} is VALID [2022-04-27 13:38:36,182 INFO L290 TraceCheckUtils]: 39: Hoare triple {1862#(and (<= (mod main_~B~0 4294967296) 2) (<= 1 (mod main_~B~0 4294967296)) (= 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; {1914#(and (= (* main_~B~0 2) main_~d~0) (<= (mod main_~B~0 4294967296) 2) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-27 13:38:36,182 INFO L290 TraceCheckUtils]: 40: Hoare triple {1914#(and (= (* main_~B~0 2) main_~d~0) (<= (mod main_~B~0 4294967296) 2) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} assume !false; {1914#(and (= (* main_~B~0 2) main_~d~0) (<= (mod main_~B~0 4294967296) 2) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-27 13:38:36,182 INFO L272 TraceCheckUtils]: 41: Hoare triple {1914#(and (= (* main_~B~0 2) main_~d~0) (<= (mod main_~B~0 4294967296) 2) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:38:36,182 INFO L290 TraceCheckUtils]: 42: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:38:36,182 INFO L290 TraceCheckUtils]: 43: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:38:36,182 INFO L290 TraceCheckUtils]: 44: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:38:36,183 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1787#true} {1914#(and (= (* main_~B~0 2) main_~d~0) (<= (mod main_~B~0 4294967296) 2) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #87#return; {1914#(and (= (* main_~B~0 2) main_~d~0) (<= (mod main_~B~0 4294967296) 2) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-27 13:38:36,183 INFO L272 TraceCheckUtils]: 46: Hoare triple {1914#(and (= (* main_~B~0 2) main_~d~0) (<= (mod main_~B~0 4294967296) 2) (= main_~p~0 2) (<= 1 (mod 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:38:36,183 INFO L290 TraceCheckUtils]: 47: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:38:36,183 INFO L290 TraceCheckUtils]: 48: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:38:36,183 INFO L290 TraceCheckUtils]: 49: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:38:36,184 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1787#true} {1914#(and (= (* main_~B~0 2) main_~d~0) (<= (mod main_~B~0 4294967296) 2) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #89#return; {1914#(and (= (* main_~B~0 2) main_~d~0) (<= (mod main_~B~0 4294967296) 2) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-27 13:38:36,188 INFO L272 TraceCheckUtils]: 51: Hoare triple {1914#(and (= (* main_~B~0 2) main_~d~0) (<= (mod main_~B~0 4294967296) 2) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {1951#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:38:36,188 INFO L290 TraceCheckUtils]: 52: Hoare triple {1951#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1955#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:38:36,189 INFO L290 TraceCheckUtils]: 53: Hoare triple {1955#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1788#false} is VALID [2022-04-27 13:38:36,189 INFO L290 TraceCheckUtils]: 54: Hoare triple {1788#false} assume !false; {1788#false} is VALID [2022-04-27 13:38:36,189 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 16 proven. 4 refuted. 0 times theorem prover too weak. 46 trivial. 0 not checked. [2022-04-27 13:38:36,189 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:38:38,740 INFO L290 TraceCheckUtils]: 54: Hoare triple {1788#false} assume !false; {1788#false} is VALID [2022-04-27 13:38:38,740 INFO L290 TraceCheckUtils]: 53: Hoare triple {1955#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1788#false} is VALID [2022-04-27 13:38:38,741 INFO L290 TraceCheckUtils]: 52: Hoare triple {1951#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1955#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:38:38,741 INFO L272 TraceCheckUtils]: 51: Hoare triple {1971#(= (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)); {1951#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:38:38,742 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1787#true} {1971#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} #89#return; {1971#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} is VALID [2022-04-27 13:38:38,742 INFO L290 TraceCheckUtils]: 49: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:38:38,742 INFO L290 TraceCheckUtils]: 48: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:38:38,742 INFO L290 TraceCheckUtils]: 47: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:38:38,742 INFO L272 TraceCheckUtils]: 46: Hoare triple {1971#(= (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:38:38,743 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1787#true} {1971#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} #87#return; {1971#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} is VALID [2022-04-27 13:38:38,743 INFO L290 TraceCheckUtils]: 44: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:38:38,743 INFO L290 TraceCheckUtils]: 43: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:38:38,743 INFO L290 TraceCheckUtils]: 42: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:38:38,743 INFO L272 TraceCheckUtils]: 41: Hoare triple {1971#(= (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:38:38,743 INFO L290 TraceCheckUtils]: 40: Hoare triple {1971#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} assume !false; {1971#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} is VALID [2022-04-27 13:38:40,750 WARN L290 TraceCheckUtils]: 39: Hoare triple {2008#(= (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; {1971#(= (mod main_~d~0 4294967296) (mod (* main_~B~0 main_~p~0) 4294967296))} is UNKNOWN [2022-04-27 13:38:40,751 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1787#true} {2008#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} #91#return; {2008#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} is VALID [2022-04-27 13:38:40,751 INFO L290 TraceCheckUtils]: 37: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:38:40,751 INFO L290 TraceCheckUtils]: 36: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:38:40,751 INFO L290 TraceCheckUtils]: 35: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:38:40,752 INFO L272 TraceCheckUtils]: 34: Hoare triple {2008#(= (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:38:40,752 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1787#true} {2008#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} #89#return; {2008#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} is VALID [2022-04-27 13:38:40,752 INFO L290 TraceCheckUtils]: 32: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:38:40,752 INFO L290 TraceCheckUtils]: 31: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:38:40,752 INFO L290 TraceCheckUtils]: 30: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:38:40,752 INFO L272 TraceCheckUtils]: 29: Hoare triple {2008#(= (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:38:40,757 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1787#true} {2008#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} #87#return; {2008#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} is VALID [2022-04-27 13:38:40,757 INFO L290 TraceCheckUtils]: 27: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:38:40,757 INFO L290 TraceCheckUtils]: 26: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:38:40,757 INFO L290 TraceCheckUtils]: 25: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:38:40,758 INFO L272 TraceCheckUtils]: 24: Hoare triple {2008#(= (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:38:40,758 INFO L290 TraceCheckUtils]: 23: Hoare triple {2008#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} assume !false; {2008#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} is VALID [2022-04-27 13:38:40,758 INFO L290 TraceCheckUtils]: 22: Hoare triple {1787#true} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {2008#(= (mod (* main_~d~0 2) 4294967296) (mod (* (* main_~p~0 2) main_~B~0) 4294967296))} is VALID [2022-04-27 13:38:40,758 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1787#true} {1787#true} #85#return; {1787#true} is VALID [2022-04-27 13:38:40,758 INFO L290 TraceCheckUtils]: 20: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:38:40,758 INFO L290 TraceCheckUtils]: 19: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:38:40,759 INFO L290 TraceCheckUtils]: 18: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:38:40,759 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:38:40,759 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1787#true} {1787#true} #83#return; {1787#true} is VALID [2022-04-27 13:38:40,759 INFO L290 TraceCheckUtils]: 15: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:38:40,759 INFO L290 TraceCheckUtils]: 14: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:38:40,759 INFO L290 TraceCheckUtils]: 13: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:38:40,759 INFO L272 TraceCheckUtils]: 12: Hoare triple {1787#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:38:40,759 INFO L290 TraceCheckUtils]: 11: Hoare triple {1787#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {1787#true} is VALID [2022-04-27 13:38:40,759 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1787#true} {1787#true} #81#return; {1787#true} is VALID [2022-04-27 13:38:40,759 INFO L290 TraceCheckUtils]: 9: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:38:40,759 INFO L290 TraceCheckUtils]: 8: Hoare triple {1787#true} assume !(0 == ~cond); {1787#true} is VALID [2022-04-27 13:38:40,759 INFO L290 TraceCheckUtils]: 7: Hoare triple {1787#true} ~cond := #in~cond; {1787#true} is VALID [2022-04-27 13:38:40,759 INFO L272 TraceCheckUtils]: 6: Hoare triple {1787#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {1787#true} is VALID [2022-04-27 13:38:40,760 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:38:40,760 INFO L272 TraceCheckUtils]: 4: Hoare triple {1787#true} call #t~ret6 := main(); {1787#true} is VALID [2022-04-27 13:38:40,760 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1787#true} {1787#true} #101#return; {1787#true} is VALID [2022-04-27 13:38:40,760 INFO L290 TraceCheckUtils]: 2: Hoare triple {1787#true} assume true; {1787#true} is VALID [2022-04-27 13:38:40,760 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:38:40,760 INFO L272 TraceCheckUtils]: 0: Hoare triple {1787#true} call ULTIMATE.init(); {1787#true} is VALID [2022-04-27 13:38:40,760 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 10 proven. 0 refuted. 4 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-27 13:38:40,760 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:38:40,760 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1912132465] [2022-04-27 13:38:40,760 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:38:40,760 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [498036427] [2022-04-27 13:38:40,761 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [498036427] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:38:40,761 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:38:40,761 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 6] total 12 [2022-04-27 13:38:40,761 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1298324830] [2022-04-27 13:38:40,761 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:38:40,761 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.1818181818181817) internal successors, (24), 9 states have internal predecessors, (24), 6 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) Word has length 55 [2022-04-27 13:38:40,762 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:38:40,762 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 2.1818181818181817) internal successors, (24), 9 states have internal predecessors, (24), 6 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-27 13:38:43,108 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:38:43,108 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-27 13:38:43,108 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:38:43,108 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-27 13:38:43,108 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=101, Unknown=1, NotChecked=0, Total=132 [2022-04-27 13:38:43,109 INFO L87 Difference]: Start difference. First operand 64 states and 81 transitions. Second operand has 12 states, 11 states have (on average 2.1818181818181817) internal successors, (24), 9 states have internal predecessors, (24), 6 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-27 13:38:49,540 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:38:59,008 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:01,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:01,425 INFO L93 Difference]: Finished difference Result 91 states and 119 transitions. [2022-04-27 13:39:01,425 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 13:39:01,425 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.1818181818181817) internal successors, (24), 9 states have internal predecessors, (24), 6 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) Word has length 55 [2022-04-27 13:39:01,425 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:39:01,426 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.1818181818181817) internal successors, (24), 9 states have internal predecessors, (24), 6 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-27 13:39:01,427 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 98 transitions. [2022-04-27 13:39:01,427 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.1818181818181817) internal successors, (24), 9 states have internal predecessors, (24), 6 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-27 13:39:01,429 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 98 transitions. [2022-04-27 13:39:01,429 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 98 transitions. [2022-04-27 13:39:04,755 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 97 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 13:39:04,756 INFO L225 Difference]: With dead ends: 91 [2022-04-27 13:39:04,756 INFO L226 Difference]: Without dead ends: 83 [2022-04-27 13:39:04,757 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 113 GetRequests, 99 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 2.9s TimeCoverageRelationStatistics Valid=46, Invalid=163, Unknown=1, NotChecked=0, Total=210 [2022-04-27 13:39:04,757 INFO L413 NwaCegarLoop]: 50 mSDtfsCounter, 47 mSDsluCounter, 218 mSDsCounter, 0 mSdLazyCounter, 223 mSolverCounterSat, 57 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 12.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 53 SdHoareTripleChecker+Valid, 268 SdHoareTripleChecker+Invalid, 282 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 57 IncrementalHoareTripleChecker+Valid, 223 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 12.4s IncrementalHoareTripleChecker+Time [2022-04-27 13:39:04,758 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [53 Valid, 268 Invalid, 282 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [57 Valid, 223 Invalid, 2 Unknown, 0 Unchecked, 12.4s Time] [2022-04-27 13:39:04,758 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 83 states. [2022-04-27 13:39:04,795 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 83 to 80. [2022-04-27 13:39:04,795 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:39:04,795 INFO L82 GeneralOperation]: Start isEquivalent. First operand 83 states. Second operand has 80 states, 44 states have (on average 1.2045454545454546) internal successors, (53), 47 states have internal predecessors, (53), 27 states have call successors, (27), 9 states have call predecessors, (27), 8 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-27 13:39:04,795 INFO L74 IsIncluded]: Start isIncluded. First operand 83 states. Second operand has 80 states, 44 states have (on average 1.2045454545454546) internal successors, (53), 47 states have internal predecessors, (53), 27 states have call successors, (27), 9 states have call predecessors, (27), 8 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-27 13:39:04,796 INFO L87 Difference]: Start difference. First operand 83 states. Second operand has 80 states, 44 states have (on average 1.2045454545454546) internal successors, (53), 47 states have internal predecessors, (53), 27 states have call successors, (27), 9 states have call predecessors, (27), 8 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-27 13:39:04,798 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:04,798 INFO L93 Difference]: Finished difference Result 83 states and 109 transitions. [2022-04-27 13:39:04,798 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 109 transitions. [2022-04-27 13:39:04,799 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:39:04,799 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:39:04,799 INFO L74 IsIncluded]: Start isIncluded. First operand has 80 states, 44 states have (on average 1.2045454545454546) internal successors, (53), 47 states have internal predecessors, (53), 27 states have call successors, (27), 9 states have call predecessors, (27), 8 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 83 states. [2022-04-27 13:39:04,799 INFO L87 Difference]: Start difference. First operand has 80 states, 44 states have (on average 1.2045454545454546) internal successors, (53), 47 states have internal predecessors, (53), 27 states have call successors, (27), 9 states have call predecessors, (27), 8 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 83 states. [2022-04-27 13:39:04,801 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:04,801 INFO L93 Difference]: Finished difference Result 83 states and 109 transitions. [2022-04-27 13:39:04,802 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 109 transitions. [2022-04-27 13:39:04,802 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:39:04,802 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:39:04,802 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:39:04,802 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:39:04,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 80 states, 44 states have (on average 1.2045454545454546) internal successors, (53), 47 states have internal predecessors, (53), 27 states have call successors, (27), 9 states have call predecessors, (27), 8 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-27 13:39:04,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 80 states to 80 states and 104 transitions. [2022-04-27 13:39:04,804 INFO L78 Accepts]: Start accepts. Automaton has 80 states and 104 transitions. Word has length 55 [2022-04-27 13:39:04,804 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:39:04,805 INFO L495 AbstractCegarLoop]: Abstraction has 80 states and 104 transitions. [2022-04-27 13:39:04,805 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 2.1818181818181817) internal successors, (24), 9 states have internal predecessors, (24), 6 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-27 13:39:04,805 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 104 transitions. [2022-04-27 13:39:04,805 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-27 13:39:04,805 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:39:04,806 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:39:04,817 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:39:05,006 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:39:05,006 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:39:05,007 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:39:05,007 INFO L85 PathProgramCache]: Analyzing trace with hash -682689219, now seen corresponding path program 1 times [2022-04-27 13:39:05,007 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:39:05,007 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1808037157] [2022-04-27 13:39:05,007 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:39:05,008 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:39:05,017 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:39:05,017 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1041088661] [2022-04-27 13:39:05,017 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:39:05,017 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:39:05,017 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:39:05,036 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:39:05,037 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:39:05,088 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:05,089 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-27 13:39:05,102 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:39:05,103 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:39:07,015 INFO L272 TraceCheckUtils]: 0: Hoare triple {2555#true} call ULTIMATE.init(); {2555#true} is VALID [2022-04-27 13:39:07,015 INFO L290 TraceCheckUtils]: 1: Hoare triple {2555#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); {2555#true} is VALID [2022-04-27 13:39:07,015 INFO L290 TraceCheckUtils]: 2: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:07,016 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2555#true} {2555#true} #101#return; {2555#true} is VALID [2022-04-27 13:39:07,016 INFO L272 TraceCheckUtils]: 4: Hoare triple {2555#true} call #t~ret6 := main(); {2555#true} is VALID [2022-04-27 13:39:07,016 INFO L290 TraceCheckUtils]: 5: Hoare triple {2555#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; {2555#true} is VALID [2022-04-27 13:39:07,016 INFO L272 TraceCheckUtils]: 6: Hoare triple {2555#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {2555#true} is VALID [2022-04-27 13:39:07,016 INFO L290 TraceCheckUtils]: 7: Hoare triple {2555#true} ~cond := #in~cond; {2555#true} is VALID [2022-04-27 13:39:07,016 INFO L290 TraceCheckUtils]: 8: Hoare triple {2555#true} assume !(0 == ~cond); {2555#true} is VALID [2022-04-27 13:39:07,016 INFO L290 TraceCheckUtils]: 9: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:07,016 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2555#true} {2555#true} #81#return; {2555#true} is VALID [2022-04-27 13:39:07,016 INFO L290 TraceCheckUtils]: 11: Hoare triple {2555#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2555#true} is VALID [2022-04-27 13:39:07,016 INFO L272 TraceCheckUtils]: 12: Hoare triple {2555#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {2555#true} is VALID [2022-04-27 13:39:07,019 INFO L290 TraceCheckUtils]: 13: Hoare triple {2555#true} ~cond := #in~cond; {2599#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:39:07,019 INFO L290 TraceCheckUtils]: 14: Hoare triple {2599#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2603#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:39:07,020 INFO L290 TraceCheckUtils]: 15: Hoare triple {2603#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2603#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:39:07,020 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2603#(not (= |assume_abort_if_not_#in~cond| 0))} {2555#true} #83#return; {2610#(<= (mod main_~B~0 4294967296) 2)} is VALID [2022-04-27 13:39:07,020 INFO L272 TraceCheckUtils]: 17: Hoare triple {2610#(<= (mod main_~B~0 4294967296) 2)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2555#true} is VALID [2022-04-27 13:39:07,021 INFO L290 TraceCheckUtils]: 18: Hoare triple {2555#true} ~cond := #in~cond; {2555#true} is VALID [2022-04-27 13:39:07,021 INFO L290 TraceCheckUtils]: 19: Hoare triple {2555#true} assume !(0 == ~cond); {2555#true} is VALID [2022-04-27 13:39:07,021 INFO L290 TraceCheckUtils]: 20: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:07,021 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2555#true} {2610#(<= (mod main_~B~0 4294967296) 2)} #85#return; {2610#(<= (mod main_~B~0 4294967296) 2)} is VALID [2022-04-27 13:39:07,021 INFO L290 TraceCheckUtils]: 22: Hoare triple {2610#(<= (mod main_~B~0 4294967296) 2)} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {2629#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-27 13:39:07,022 INFO L290 TraceCheckUtils]: 23: Hoare triple {2629#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} assume !false; {2629#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-27 13:39:07,022 INFO L272 TraceCheckUtils]: 24: Hoare triple {2629#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} call __VERIFIER_assert((if 0 == ~q~0 % 4294967296 then 1 else 0)); {2555#true} is VALID [2022-04-27 13:39:07,022 INFO L290 TraceCheckUtils]: 25: Hoare triple {2555#true} ~cond := #in~cond; {2555#true} is VALID [2022-04-27 13:39:07,022 INFO L290 TraceCheckUtils]: 26: Hoare triple {2555#true} assume !(0 == ~cond); {2555#true} is VALID [2022-04-27 13:39:07,022 INFO L290 TraceCheckUtils]: 27: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:07,023 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2555#true} {2629#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} #87#return; {2629#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-27 13:39:07,023 INFO L272 TraceCheckUtils]: 29: Hoare triple {2629#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} call __VERIFIER_assert((if ~r~0 % 4294967296 == ~A~0 % 4294967296 then 1 else 0)); {2555#true} is VALID [2022-04-27 13:39:07,023 INFO L290 TraceCheckUtils]: 30: Hoare triple {2555#true} ~cond := #in~cond; {2555#true} is VALID [2022-04-27 13:39:07,023 INFO L290 TraceCheckUtils]: 31: Hoare triple {2555#true} assume !(0 == ~cond); {2555#true} is VALID [2022-04-27 13:39:07,023 INFO L290 TraceCheckUtils]: 32: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:07,023 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2555#true} {2629#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} #89#return; {2629#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-27 13:39:07,024 INFO L272 TraceCheckUtils]: 34: Hoare triple {2629#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {2555#true} is VALID [2022-04-27 13:39:07,024 INFO L290 TraceCheckUtils]: 35: Hoare triple {2555#true} ~cond := #in~cond; {2555#true} is VALID [2022-04-27 13:39:07,024 INFO L290 TraceCheckUtils]: 36: Hoare triple {2555#true} assume !(0 == ~cond); {2555#true} is VALID [2022-04-27 13:39:07,024 INFO L290 TraceCheckUtils]: 37: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:07,024 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2555#true} {2629#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} #91#return; {2629#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-27 13:39:07,025 INFO L290 TraceCheckUtils]: 39: Hoare triple {2629#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} assume !(~r~0 % 4294967296 >= ~d~0 % 4294967296); {2681#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-27 13:39:07,025 INFO L290 TraceCheckUtils]: 40: Hoare triple {2681#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} assume !false; {2681#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-27 13:39:07,025 INFO L272 TraceCheckUtils]: 41: Hoare triple {2681#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} call __VERIFIER_assert((if ~A~0 % 4294967296 == (~q~0 * ~B~0 + ~r~0) % 4294967296 then 1 else 0)); {2555#true} is VALID [2022-04-27 13:39:07,025 INFO L290 TraceCheckUtils]: 42: Hoare triple {2555#true} ~cond := #in~cond; {2555#true} is VALID [2022-04-27 13:39:07,025 INFO L290 TraceCheckUtils]: 43: Hoare triple {2555#true} assume !(0 == ~cond); {2555#true} is VALID [2022-04-27 13:39:07,025 INFO L290 TraceCheckUtils]: 44: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:07,026 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2555#true} {2681#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} #93#return; {2681#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-27 13:39:07,026 INFO L272 TraceCheckUtils]: 46: Hoare triple {2681#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} call __VERIFIER_assert((if ~d~0 % 4294967296 == ~B~0 * ~p~0 % 4294967296 then 1 else 0)); {2555#true} is VALID [2022-04-27 13:39:07,026 INFO L290 TraceCheckUtils]: 47: Hoare triple {2555#true} ~cond := #in~cond; {2555#true} is VALID [2022-04-27 13:39:07,026 INFO L290 TraceCheckUtils]: 48: Hoare triple {2555#true} assume !(0 == ~cond); {2555#true} is VALID [2022-04-27 13:39:07,026 INFO L290 TraceCheckUtils]: 49: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:07,027 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2555#true} {2681#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} #95#return; {2681#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-27 13:39:07,027 INFO L290 TraceCheckUtils]: 51: Hoare triple {2681#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} assume !(1 != ~p~0 % 4294967296); {2681#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} is VALID [2022-04-27 13:39:07,028 INFO L272 TraceCheckUtils]: 52: Hoare triple {2681#(and (= main_~A~0 main_~r~0) (not (<= (mod main_~d~0 4294967296) (mod main_~r~0 4294967296))) (= main_~q~0 0) (<= (mod main_~d~0 4294967296) 2))} call __VERIFIER_assert((if ~A~0 % 4294967296 == (~d~0 * ~q~0 + ~r~0) % 4294967296 then 1 else 0)); {2721#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:39:07,028 INFO L290 TraceCheckUtils]: 53: Hoare triple {2721#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2725#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:39:07,029 INFO L290 TraceCheckUtils]: 54: Hoare triple {2725#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2556#false} is VALID [2022-04-27 13:39:07,029 INFO L290 TraceCheckUtils]: 55: Hoare triple {2556#false} assume !false; {2556#false} is VALID [2022-04-27 13:39:07,029 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:39:07,029 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:39:08,727 INFO L290 TraceCheckUtils]: 55: Hoare triple {2556#false} assume !false; {2556#false} is VALID [2022-04-27 13:39:08,728 INFO L290 TraceCheckUtils]: 54: Hoare triple {2725#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2556#false} is VALID [2022-04-27 13:39:08,728 INFO L290 TraceCheckUtils]: 53: Hoare triple {2721#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2725#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:39:08,729 INFO L272 TraceCheckUtils]: 52: Hoare triple {2741#(= (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)); {2721#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:39:08,729 INFO L290 TraceCheckUtils]: 51: Hoare triple {2741#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} assume !(1 != ~p~0 % 4294967296); {2741#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} is VALID [2022-04-27 13:39:08,729 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2555#true} {2741#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} #95#return; {2741#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} is VALID [2022-04-27 13:39:08,729 INFO L290 TraceCheckUtils]: 49: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:08,730 INFO L290 TraceCheckUtils]: 48: Hoare triple {2555#true} assume !(0 == ~cond); {2555#true} is VALID [2022-04-27 13:39:08,730 INFO L290 TraceCheckUtils]: 47: Hoare triple {2555#true} ~cond := #in~cond; {2555#true} is VALID [2022-04-27 13:39:08,730 INFO L272 TraceCheckUtils]: 46: Hoare triple {2741#(= (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)); {2555#true} is VALID [2022-04-27 13:39:08,730 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2555#true} {2741#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} #93#return; {2741#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} is VALID [2022-04-27 13:39:08,730 INFO L290 TraceCheckUtils]: 44: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:08,730 INFO L290 TraceCheckUtils]: 43: Hoare triple {2555#true} assume !(0 == ~cond); {2555#true} is VALID [2022-04-27 13:39:08,730 INFO L290 TraceCheckUtils]: 42: Hoare triple {2555#true} ~cond := #in~cond; {2555#true} is VALID [2022-04-27 13:39:08,730 INFO L272 TraceCheckUtils]: 41: Hoare triple {2741#(= (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)); {2555#true} is VALID [2022-04-27 13:39:08,731 INFO L290 TraceCheckUtils]: 40: Hoare triple {2741#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} assume !false; {2741#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} is VALID [2022-04-27 13:39:08,731 INFO L290 TraceCheckUtils]: 39: Hoare triple {2781#(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); {2741#(= (mod main_~A~0 4294967296) (mod (+ (* main_~d~0 main_~q~0) main_~r~0) 4294967296))} is VALID [2022-04-27 13:39:08,732 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2555#true} {2781#(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; {2781#(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:39:08,732 INFO L290 TraceCheckUtils]: 37: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:08,732 INFO L290 TraceCheckUtils]: 36: Hoare triple {2555#true} assume !(0 == ~cond); {2555#true} is VALID [2022-04-27 13:39:08,732 INFO L290 TraceCheckUtils]: 35: Hoare triple {2555#true} ~cond := #in~cond; {2555#true} is VALID [2022-04-27 13:39:08,732 INFO L272 TraceCheckUtils]: 34: Hoare triple {2781#(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)); {2555#true} is VALID [2022-04-27 13:39:08,732 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2555#true} {2781#(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; {2781#(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:39:08,732 INFO L290 TraceCheckUtils]: 32: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:08,732 INFO L290 TraceCheckUtils]: 31: Hoare triple {2555#true} assume !(0 == ~cond); {2555#true} is VALID [2022-04-27 13:39:08,733 INFO L290 TraceCheckUtils]: 30: Hoare triple {2555#true} ~cond := #in~cond; {2555#true} is VALID [2022-04-27 13:39:08,733 INFO L272 TraceCheckUtils]: 29: Hoare triple {2781#(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)); {2555#true} is VALID [2022-04-27 13:39:08,733 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2555#true} {2781#(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; {2781#(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:39:08,733 INFO L290 TraceCheckUtils]: 27: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:08,733 INFO L290 TraceCheckUtils]: 26: Hoare triple {2555#true} assume !(0 == ~cond); {2555#true} is VALID [2022-04-27 13:39:08,733 INFO L290 TraceCheckUtils]: 25: Hoare triple {2555#true} ~cond := #in~cond; {2555#true} is VALID [2022-04-27 13:39:08,733 INFO L272 TraceCheckUtils]: 24: Hoare triple {2781#(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)); {2555#true} is VALID [2022-04-27 13:39:08,734 INFO L290 TraceCheckUtils]: 23: Hoare triple {2781#(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; {2781#(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:39:08,734 INFO L290 TraceCheckUtils]: 22: Hoare triple {2555#true} ~r~0 := ~A~0;~d~0 := ~B~0;~p~0 := 1;~q~0 := 0; {2781#(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:39:08,734 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2555#true} {2555#true} #85#return; {2555#true} is VALID [2022-04-27 13:39:08,734 INFO L290 TraceCheckUtils]: 20: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:08,734 INFO L290 TraceCheckUtils]: 19: Hoare triple {2555#true} assume !(0 == ~cond); {2555#true} is VALID [2022-04-27 13:39:08,734 INFO L290 TraceCheckUtils]: 18: Hoare triple {2555#true} ~cond := #in~cond; {2555#true} is VALID [2022-04-27 13:39:08,734 INFO L272 TraceCheckUtils]: 17: Hoare triple {2555#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2555#true} is VALID [2022-04-27 13:39:08,734 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2555#true} {2555#true} #83#return; {2555#true} is VALID [2022-04-27 13:39:08,735 INFO L290 TraceCheckUtils]: 15: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:08,735 INFO L290 TraceCheckUtils]: 14: Hoare triple {2555#true} assume !(0 == ~cond); {2555#true} is VALID [2022-04-27 13:39:08,735 INFO L290 TraceCheckUtils]: 13: Hoare triple {2555#true} ~cond := #in~cond; {2555#true} is VALID [2022-04-27 13:39:08,735 INFO L272 TraceCheckUtils]: 12: Hoare triple {2555#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 0 && ~B~0 % 4294967296 <= 2 then 1 else 0)); {2555#true} is VALID [2022-04-27 13:39:08,735 INFO L290 TraceCheckUtils]: 11: Hoare triple {2555#true} ~B~0 := #t~nondet5;havoc #t~nondet5; {2555#true} is VALID [2022-04-27 13:39:08,735 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2555#true} {2555#true} #81#return; {2555#true} is VALID [2022-04-27 13:39:08,735 INFO L290 TraceCheckUtils]: 9: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:08,735 INFO L290 TraceCheckUtils]: 8: Hoare triple {2555#true} assume !(0 == ~cond); {2555#true} is VALID [2022-04-27 13:39:08,735 INFO L290 TraceCheckUtils]: 7: Hoare triple {2555#true} ~cond := #in~cond; {2555#true} is VALID [2022-04-27 13:39:08,735 INFO L272 TraceCheckUtils]: 6: Hoare triple {2555#true} call assume_abort_if_not((if ~A~0 % 4294967296 >= 0 && ~A~0 % 4294967296 <= 2 then 1 else 0)); {2555#true} is VALID [2022-04-27 13:39:08,735 INFO L290 TraceCheckUtils]: 5: Hoare triple {2555#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; {2555#true} is VALID [2022-04-27 13:39:08,735 INFO L272 TraceCheckUtils]: 4: Hoare triple {2555#true} call #t~ret6 := main(); {2555#true} is VALID [2022-04-27 13:39:08,735 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2555#true} {2555#true} #101#return; {2555#true} is VALID [2022-04-27 13:39:08,735 INFO L290 TraceCheckUtils]: 2: Hoare triple {2555#true} assume true; {2555#true} is VALID [2022-04-27 13:39:08,735 INFO L290 TraceCheckUtils]: 1: Hoare triple {2555#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); {2555#true} is VALID [2022-04-27 13:39:08,736 INFO L272 TraceCheckUtils]: 0: Hoare triple {2555#true} call ULTIMATE.init(); {2555#true} is VALID [2022-04-27 13:39:08,736 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:39:08,736 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:39:08,736 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1808037157] [2022-04-27 13:39:08,736 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:39:08,736 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1041088661] [2022-04-27 13:39:08,736 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1041088661] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 13:39:08,736 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:39:08,736 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-27 13:39:08,736 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [670035031] [2022-04-27 13:39:08,736 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:39:08,737 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:39:08,737 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:39:08,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:39:08,767 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:39:08,768 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 13:39:08,768 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:39:08,768 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 13:39:08,768 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:39:08,768 INFO L87 Difference]: Start difference. First operand 80 states and 104 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:39:14,769 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:15,877 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:15,878 INFO L93 Difference]: Finished difference Result 86 states and 109 transitions. [2022-04-27 13:39:15,878 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:39:15,878 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:39:15,878 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:39:15,878 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:39:15,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-27 13:39:15,879 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:39:15,880 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-27 13:39:15,880 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-27 13:39:15,935 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:39:15,936 INFO L225 Difference]: With dead ends: 86 [2022-04-27 13:39:15,936 INFO L226 Difference]: Without dead ends: 79 [2022-04-27 13:39:15,937 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 112 GetRequests, 101 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=29, Invalid=103, Unknown=0, NotChecked=0, Total=132 [2022-04-27 13:39:15,937 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 9 mSDsluCounter, 131 mSDsCounter, 0 mSdLazyCounter, 59 mSolverCounterSat, 3 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 177 SdHoareTripleChecker+Invalid, 63 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 59 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 4.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:39:15,937 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 177 Invalid, 63 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 59 Invalid, 1 Unknown, 0 Unchecked, 4.0s Time] [2022-04-27 13:39:15,938 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 79 states. [2022-04-27 13:39:15,963 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 79 to 78. [2022-04-27 13:39:15,963 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:39:15,963 INFO L82 GeneralOperation]: Start isEquivalent. First operand 79 states. Second operand has 78 states, 43 states have (on average 1.186046511627907) internal successors, (51), 46 states have internal predecessors, (51), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-27 13:39:15,964 INFO L74 IsIncluded]: Start isIncluded. First operand 79 states. Second operand has 78 states, 43 states have (on average 1.186046511627907) internal successors, (51), 46 states have internal predecessors, (51), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-27 13:39:15,964 INFO L87 Difference]: Start difference. First operand 79 states. Second operand has 78 states, 43 states have (on average 1.186046511627907) internal successors, (51), 46 states have internal predecessors, (51), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-27 13:39:15,967 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:15,967 INFO L93 Difference]: Finished difference Result 79 states and 102 transitions. [2022-04-27 13:39:15,967 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 102 transitions. [2022-04-27 13:39:15,967 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:39:15,967 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:39:15,967 INFO L74 IsIncluded]: Start isIncluded. First operand has 78 states, 43 states have (on average 1.186046511627907) internal successors, (51), 46 states have internal predecessors, (51), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) Second operand 79 states. [2022-04-27 13:39:15,968 INFO L87 Difference]: Start difference. First operand has 78 states, 43 states have (on average 1.186046511627907) internal successors, (51), 46 states have internal predecessors, (51), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) Second operand 79 states. [2022-04-27 13:39:15,969 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:39:15,969 INFO L93 Difference]: Finished difference Result 79 states and 102 transitions. [2022-04-27 13:39:15,970 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 102 transitions. [2022-04-27 13:39:15,970 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:39:15,970 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:39:15,970 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:39:15,970 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:39:15,970 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 43 states have (on average 1.186046511627907) internal successors, (51), 46 states have internal predecessors, (51), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-27 13:39:15,972 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 101 transitions. [2022-04-27 13:39:15,972 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 101 transitions. Word has length 56 [2022-04-27 13:39:15,972 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:39:15,972 INFO L495 AbstractCegarLoop]: Abstraction has 78 states and 101 transitions. [2022-04-27 13:39:15,972 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:39:15,973 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 101 transitions. [2022-04-27 13:39:15,973 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-27 13:39:15,973 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:39:15,973 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:39:15,991 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:39:16,187 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:39:16,187 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:39:16,188 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:39:16,188 INFO L85 PathProgramCache]: Analyzing trace with hash 1586192473, now seen corresponding path program 1 times [2022-04-27 13:39:16,188 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:39:16,188 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [655894003] [2022-04-27 13:39:16,188 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:39:16,188 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:39:16,199 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:39:16,199 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1384062386] [2022-04-27 13:39:16,199 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:39:16,199 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:39:16,199 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:39:16,208 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:39:16,209 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process