/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/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/divbin2_valuebound5.i -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 00:20:19,972 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 00:20:19,974 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 00:20:20,002 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 00:20:20,003 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 00:20:20,006 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 00:20:20,010 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 00:20:20,015 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 00:20:20,016 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 00:20:20,020 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 00:20:20,020 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 00:20:20,021 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 00:20:20,022 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 00:20:20,024 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 00:20:20,025 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 00:20:20,026 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 00:20:20,026 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 00:20:20,027 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 00:20:20,029 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 00:20:20,034 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 00:20:20,035 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 00:20:20,036 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 00:20:20,037 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 00:20:20,038 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 00:20:20,039 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 00:20:20,044 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 00:20:20,044 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 00:20:20,044 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 00:20:20,045 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 00:20:20,046 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 00:20:20,047 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 00:20:20,047 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 00:20:20,048 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 00:20:20,048 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 00:20:20,049 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 00:20:20,049 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 00:20:20,050 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 00:20:20,050 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 00:20:20,050 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 00:20:20,050 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 00:20:20,051 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 00:20:20,052 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 00:20:20,052 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-08 00:20:20,072 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 00:20:20,073 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 00:20:20,074 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-08 00:20:20,074 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-08 00:20:20,074 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-08 00:20:20,075 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-08 00:20:20,075 INFO L138 SettingsManager]: * Use SBE=true [2022-04-08 00:20:20,075 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 00:20:20,075 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 00:20:20,076 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 00:20:20,076 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 00:20:20,076 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 00:20:20,076 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 00:20:20,076 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 00:20:20,076 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 00:20:20,076 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 00:20:20,076 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 00:20:20,076 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 00:20:20,077 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 00:20:20,077 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 00:20:20,077 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 00:20:20,077 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-08 00:20:20,077 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-08 00:20:20,077 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-08 00:20:20,078 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-08 00:20:20,078 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 00:20:20,078 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-08 00:20:20,078 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-08 00:20:20,079 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-08 00:20:20,080 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_QVASR WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-08 00:20:20,270 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 00:20:20,303 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 00:20:20,305 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 00:20:20,306 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 00:20:20,307 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 00:20:20,308 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/divbin2_valuebound5.i [2022-04-08 00:20:20,357 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/98af5a119/5cd32323b9fa4c1f913b20b89490c9f1/FLAG956a2915d [2022-04-08 00:20:20,699 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 00:20:20,699 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/divbin2_valuebound5.i [2022-04-08 00:20:20,703 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/98af5a119/5cd32323b9fa4c1f913b20b89490c9f1/FLAG956a2915d [2022-04-08 00:20:21,130 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/98af5a119/5cd32323b9fa4c1f913b20b89490c9f1 [2022-04-08 00:20:21,132 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 00:20:21,133 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-08 00:20:21,138 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 00:20:21,138 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 00:20:21,141 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 00:20:21,142 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 12:20:21" (1/1) ... [2022-04-08 00:20:21,144 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@64474465 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:20:21, skipping insertion in model container [2022-04-08 00:20:21,144 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 12:20:21" (1/1) ... [2022-04-08 00:20:21,148 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 00:20:21,162 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 00:20:21,303 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/divbin2_valuebound5.i[951,964] [2022-04-08 00:20:21,328 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 00:20:21,336 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 00:20:21,354 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/divbin2_valuebound5.i[951,964] [2022-04-08 00:20:21,364 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 00:20:21,381 INFO L208 MainTranslator]: Completed translation [2022-04-08 00:20:21,381 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:20:21 WrapperNode [2022-04-08 00:20:21,381 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 00:20:21,384 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 00:20:21,384 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 00:20:21,384 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 00:20:21,391 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:20:21" (1/1) ... [2022-04-08 00:20:21,392 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:20:21" (1/1) ... [2022-04-08 00:20:21,396 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:20:21" (1/1) ... [2022-04-08 00:20:21,396 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:20:21" (1/1) ... [2022-04-08 00:20:21,409 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:20:21" (1/1) ... [2022-04-08 00:20:21,413 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:20:21" (1/1) ... [2022-04-08 00:20:21,414 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:20:21" (1/1) ... [2022-04-08 00:20:21,415 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 00:20:21,416 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 00:20:21,416 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 00:20:21,416 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 00:20:21,419 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:20:21" (1/1) ... [2022-04-08 00:20:21,429 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 00:20:21,439 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:20:21,451 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-08 00:20:21,456 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-08 00:20:21,486 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 00:20:21,486 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 00:20:21,486 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 00:20:21,486 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 00:20:21,487 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 00:20:21,487 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 00:20:21,487 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 00:20:21,487 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 00:20:21,487 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_perror_fail [2022-04-08 00:20:21,487 INFO L130 BoogieDeclarations]: Found specification of procedure __assert [2022-04-08 00:20:21,487 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 00:20:21,488 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 00:20:21,488 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-08 00:20:21,488 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 00:20:21,488 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 00:20:21,488 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 00:20:21,488 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 00:20:21,488 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 00:20:21,488 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 00:20:21,488 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 00:20:21,489 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 00:20:21,489 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 00:20:21,542 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 00:20:21,544 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 00:20:21,703 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 00:20:21,708 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 00:20:21,709 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-08 00:20:21,710 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 12:20:21 BoogieIcfgContainer [2022-04-08 00:20:21,710 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 00:20:21,711 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-08 00:20:21,711 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-08 00:20:21,712 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-08 00:20:21,714 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 12:20:21" (1/1) ... [2022-04-08 00:20:21,716 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-08 00:20:21,752 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 08.04 12:20:21 BasicIcfg [2022-04-08 00:20:21,752 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-08 00:20:21,754 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 00:20:21,754 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 00:20:21,757 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 00:20:21,757 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 12:20:21" (1/4) ... [2022-04-08 00:20:21,758 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3a73c05e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 12:20:21, skipping insertion in model container [2022-04-08 00:20:21,758 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:20:21" (2/4) ... [2022-04-08 00:20:21,758 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3a73c05e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 12:20:21, skipping insertion in model container [2022-04-08 00:20:21,758 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 12:20:21" (3/4) ... [2022-04-08 00:20:21,758 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3a73c05e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 12:20:21, skipping insertion in model container [2022-04-08 00:20:21,759 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 08.04 12:20:21" (4/4) ... [2022-04-08 00:20:21,759 INFO L111 eAbstractionObserver]: Analyzing ICFG divbin2_valuebound5.iqvasr [2022-04-08 00:20:21,763 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-08 00:20:21,763 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 00:20:21,795 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 00:20:21,799 INFO L340 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=FINITE_AUTOMATA, 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 [2022-04-08 00:20:21,800 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 00:20:21,825 INFO L276 IsEmpty]: Start isEmpty. Operand has 30 states, 19 states have (on average 1.5263157894736843) internal successors, (29), 20 states have internal predecessors, (29), 5 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 00:20:21,828 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-08 00:20:21,829 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:20:21,829 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 00:20:21,830 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:20:21,833 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:20:21,834 INFO L85 PathProgramCache]: Analyzing trace with hash 483266332, now seen corresponding path program 1 times [2022-04-08 00:20:21,843 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:20:21,844 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1547787273] [2022-04-08 00:20:21,844 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:20:21,845 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:20:21,949 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:20:22,044 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 00:20:22,065 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:20:22,077 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [89] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {33#true} is VALID [2022-04-08 00:20:22,077 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-08 00:20:22,078 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {33#true} {33#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-08 00:20:22,079 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 00:20:22,081 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:20:22,087 INFO L290 TraceCheckUtils]: 0: Hoare triple {33#true} [95] assume_abort_if_notENTRY-->L16: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {33#true} is VALID [2022-04-08 00:20:22,091 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} [99] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-08 00:20:22,092 INFO L290 TraceCheckUtils]: 2: Hoare triple {34#false} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-08 00:20:22,092 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {34#false} {33#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {34#false} is VALID [2022-04-08 00:20:22,094 INFO L272 TraceCheckUtils]: 0: Hoare triple {33#true} [87] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 00:20:22,095 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [89] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {33#true} is VALID [2022-04-08 00:20:22,095 INFO L290 TraceCheckUtils]: 2: Hoare triple {33#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-08 00:20:22,095 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33#true} {33#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-08 00:20:22,096 INFO L272 TraceCheckUtils]: 4: Hoare triple {33#true} [88] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-08 00:20:22,096 INFO L290 TraceCheckUtils]: 5: Hoare triple {33#true} [91] mainENTRY-->L29: Formula: (= v_main_~A~0_2 |v_main_#t~nondet1_2|) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_2, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {33#true} is VALID [2022-04-08 00:20:22,096 INFO L272 TraceCheckUtils]: 6: Hoare triple {33#true} [93] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {33#true} is VALID [2022-04-08 00:20:22,097 INFO L290 TraceCheckUtils]: 7: Hoare triple {33#true} [95] assume_abort_if_notENTRY-->L16: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {33#true} is VALID [2022-04-08 00:20:22,103 INFO L290 TraceCheckUtils]: 8: Hoare triple {33#true} [99] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-08 00:20:22,104 INFO L290 TraceCheckUtils]: 9: Hoare triple {34#false} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-08 00:20:22,105 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {34#false} {33#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {34#false} is VALID [2022-04-08 00:20:22,105 INFO L290 TraceCheckUtils]: 11: Hoare triple {34#false} [94] L29-1-->L34-2: Formula: (and (= v_main_~B~0_4 v_main_~b~0_6) (= v_main_~q~0_5 0) (= v_main_~B~0_4 1) (= v_main_~A~0_6 v_main_~r~0_3)) InVars {main_~A~0=v_main_~A~0_6} OutVars{main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_4, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_6, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_~B~0, main_~b~0, main_~r~0] {34#false} is VALID [2022-04-08 00:20:22,105 INFO L290 TraceCheckUtils]: 12: Hoare triple {34#false} [96] L34-2-->L43-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-08 00:20:22,105 INFO L290 TraceCheckUtils]: 13: Hoare triple {34#false} [101] L43-2-->L38-1: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-08 00:20:22,106 INFO L272 TraceCheckUtils]: 14: Hoare triple {34#false} [107] L38-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= (mod (+ v_main_~r~0_11 (* v_main_~q~0_10 v_main_~b~0_14)) 4294967296) (mod v_main_~A~0_10 4294967296)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_10, main_~A~0=v_main_~A~0_10, main_~b~0=v_main_~b~0_14, main_~r~0=v_main_~r~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {34#false} is VALID [2022-04-08 00:20:22,106 INFO L290 TraceCheckUtils]: 15: Hoare triple {34#false} [110] __VERIFIER_assertENTRY-->L19: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {34#false} is VALID [2022-04-08 00:20:22,106 INFO L290 TraceCheckUtils]: 16: Hoare triple {34#false} [114] L19-->L20: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-08 00:20:22,107 INFO L290 TraceCheckUtils]: 17: Hoare triple {34#false} [118] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-08 00:20:22,107 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 00:20:22,108 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:20:22,108 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1547787273] [2022-04-08 00:20:22,109 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1547787273] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 00:20:22,109 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 00:20:22,109 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 00:20:22,111 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [605026299] [2022-04-08 00:20:22,112 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 00:20:22,122 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-08 00:20:22,124 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:20:22,128 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 00:20:22,172 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 00:20:22,173 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 00:20:22,173 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:20:22,210 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 00:20:22,211 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 00:20:22,215 INFO L87 Difference]: Start difference. First operand has 30 states, 19 states have (on average 1.5263157894736843) internal successors, (29), 20 states have internal predecessors, (29), 5 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 00:20:22,379 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:20:22,380 INFO L93 Difference]: Finished difference Result 51 states and 70 transitions. [2022-04-08 00:20:22,380 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 00:20:22,380 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-08 00:20:22,380 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:20:22,382 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 00:20:22,392 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 70 transitions. [2022-04-08 00:20:22,392 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 00:20:22,396 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 70 transitions. [2022-04-08 00:20:22,397 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 70 transitions. [2022-04-08 00:20:22,468 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 00:20:22,474 INFO L225 Difference]: With dead ends: 51 [2022-04-08 00:20:22,475 INFO L226 Difference]: Without dead ends: 25 [2022-04-08 00:20:22,477 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 00:20:22,479 INFO L913 BasicCegarLoop]: 30 mSDtfsCounter, 20 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 5 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 33 SdHoareTripleChecker+Invalid, 9 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 5 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 00:20:22,483 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 33 Invalid, 9 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 5 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 00:20:22,498 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25 states. [2022-04-08 00:20:22,520 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25 to 25. [2022-04-08 00:20:22,520 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:20:22,521 INFO L82 GeneralOperation]: Start isEquivalent. First operand 25 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 00:20:22,522 INFO L74 IsIncluded]: Start isIncluded. First operand 25 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 00:20:22,523 INFO L87 Difference]: Start difference. First operand 25 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 00:20:22,534 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:20:22,535 INFO L93 Difference]: Finished difference Result 25 states and 28 transitions. [2022-04-08 00:20:22,537 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 28 transitions. [2022-04-08 00:20:22,537 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:20:22,538 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:20:22,538 INFO L74 IsIncluded]: Start isIncluded. First operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 25 states. [2022-04-08 00:20:22,538 INFO L87 Difference]: Start difference. First operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 25 states. [2022-04-08 00:20:22,541 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:20:22,541 INFO L93 Difference]: Finished difference Result 25 states and 28 transitions. [2022-04-08 00:20:22,541 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 28 transitions. [2022-04-08 00:20:22,542 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:20:22,542 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:20:22,542 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:20:22,542 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:20:22,542 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-08 00:20:22,544 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 28 transitions. [2022-04-08 00:20:22,545 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 28 transitions. Word has length 18 [2022-04-08 00:20:22,545 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:20:22,546 INFO L478 AbstractCegarLoop]: Abstraction has 25 states and 28 transitions. [2022-04-08 00:20:22,546 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 00:20:22,546 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 28 transitions. [2022-04-08 00:20:22,547 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-04-08 00:20:22,547 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:20:22,547 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 00:20:22,547 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 00:20:22,547 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:20:22,548 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:20:22,548 INFO L85 PathProgramCache]: Analyzing trace with hash -2138426952, now seen corresponding path program 1 times [2022-04-08 00:20:22,548 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:20:22,548 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1414325260] [2022-04-08 00:20:22,549 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:20:22,549 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:20:22,564 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:20:22,565 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1871167602] [2022-04-08 00:20:22,565 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:20:22,565 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:20:22,565 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:20:22,575 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 00:20:22,584 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-08 00:20:22,628 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:20:22,630 INFO L263 TraceCheckSpWp]: Trace formula consists of 66 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-08 00:20:22,640 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:20:22,643 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:20:23,040 INFO L272 TraceCheckUtils]: 0: Hoare triple {195#true} [87] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {195#true} is VALID [2022-04-08 00:20:23,041 INFO L290 TraceCheckUtils]: 1: Hoare triple {195#true} [89] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {195#true} is VALID [2022-04-08 00:20:23,041 INFO L290 TraceCheckUtils]: 2: Hoare triple {195#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {195#true} is VALID [2022-04-08 00:20:23,041 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {195#true} {195#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {195#true} is VALID [2022-04-08 00:20:23,041 INFO L272 TraceCheckUtils]: 4: Hoare triple {195#true} [88] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {195#true} is VALID [2022-04-08 00:20:23,041 INFO L290 TraceCheckUtils]: 5: Hoare triple {195#true} [91] mainENTRY-->L29: Formula: (= v_main_~A~0_2 |v_main_#t~nondet1_2|) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_2, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {195#true} is VALID [2022-04-08 00:20:23,042 INFO L272 TraceCheckUtils]: 6: Hoare triple {195#true} [93] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {195#true} is VALID [2022-04-08 00:20:23,042 INFO L290 TraceCheckUtils]: 7: Hoare triple {195#true} [95] assume_abort_if_notENTRY-->L16: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {195#true} is VALID [2022-04-08 00:20:23,042 INFO L290 TraceCheckUtils]: 8: Hoare triple {195#true} [100] L16-->L16-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {195#true} is VALID [2022-04-08 00:20:23,042 INFO L290 TraceCheckUtils]: 9: Hoare triple {195#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {195#true} is VALID [2022-04-08 00:20:23,042 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {195#true} {195#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {195#true} is VALID [2022-04-08 00:20:23,043 INFO L290 TraceCheckUtils]: 11: Hoare triple {195#true} [94] L29-1-->L34-2: Formula: (and (= v_main_~B~0_4 v_main_~b~0_6) (= v_main_~q~0_5 0) (= v_main_~B~0_4 1) (= v_main_~A~0_6 v_main_~r~0_3)) InVars {main_~A~0=v_main_~A~0_6} OutVars{main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_4, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_6, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_~B~0, main_~b~0, main_~r~0] {233#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 00:20:23,043 INFO L290 TraceCheckUtils]: 12: Hoare triple {233#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {233#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 00:20:23,044 INFO L290 TraceCheckUtils]: 13: Hoare triple {233#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (= main_~q~0 0))} [104] L35-->L43-2: Formula: (not (<= (mod v_main_~b~0_10 4294967296) (mod v_main_~r~0_8 4294967296))) InVars {main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {240#(and (= main_~b~0 1) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= main_~A~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 00:20:23,044 INFO L290 TraceCheckUtils]: 14: Hoare triple {240#(and (= main_~b~0 1) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= main_~A~0 main_~r~0) (= main_~q~0 0))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {240#(and (= main_~b~0 1) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= main_~A~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 00:20:23,045 INFO L272 TraceCheckUtils]: 15: Hoare triple {240#(and (= main_~b~0 1) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= main_~A~0 main_~r~0) (= main_~q~0 0))} [108] L39-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {247#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 00:20:23,046 INFO L290 TraceCheckUtils]: 16: Hoare triple {247#(<= 1 |__VERIFIER_assert_#in~cond|)} [110] __VERIFIER_assertENTRY-->L19: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {251#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 00:20:23,046 INFO L290 TraceCheckUtils]: 17: Hoare triple {251#(<= 1 __VERIFIER_assert_~cond)} [114] L19-->L20: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {196#false} is VALID [2022-04-08 00:20:23,047 INFO L290 TraceCheckUtils]: 18: Hoare triple {196#false} [118] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {196#false} is VALID [2022-04-08 00:20:23,047 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 00:20:23,047 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 00:20:23,048 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:20:23,048 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1414325260] [2022-04-08 00:20:23,048 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:20:23,049 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1871167602] [2022-04-08 00:20:23,063 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1871167602] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 00:20:23,063 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 00:20:23,063 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 00:20:23,064 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [872412676] [2022-04-08 00:20:23,064 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 00:20:23,065 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-04-08 00:20:23,065 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:20:23,065 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 00:20:23,087 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 00:20:23,088 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 00:20:23,088 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:20:23,088 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 00:20:23,089 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-04-08 00:20:23,089 INFO L87 Difference]: Start difference. First operand 25 states and 28 transitions. Second operand has 6 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 00:20:23,279 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:20:23,279 INFO L93 Difference]: Finished difference Result 37 states and 42 transitions. [2022-04-08 00:20:23,279 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 00:20:23,280 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-04-08 00:20:23,280 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:20:23,280 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 00:20:23,281 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 42 transitions. [2022-04-08 00:20:23,282 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 00:20:23,283 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 42 transitions. [2022-04-08 00:20:23,283 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 42 transitions. [2022-04-08 00:20:23,319 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 00:20:23,322 INFO L225 Difference]: With dead ends: 37 [2022-04-08 00:20:23,322 INFO L226 Difference]: Without dead ends: 34 [2022-04-08 00:20:23,323 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=14, Invalid=28, Unknown=0, NotChecked=0, Total=42 [2022-04-08 00:20:23,324 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 8 mSDsluCounter, 70 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 92 SdHoareTripleChecker+Invalid, 51 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 00:20:23,325 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 92 Invalid, 51 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 00:20:23,327 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-08 00:20:23,334 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-08 00:20:23,335 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:20:23,335 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 34 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 24 states have internal predecessors, (28), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 00:20:23,336 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 34 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 24 states have internal predecessors, (28), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 00:20:23,338 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 34 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 24 states have internal predecessors, (28), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 00:20:23,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:20:23,344 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2022-04-08 00:20:23,344 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-04-08 00:20:23,344 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:20:23,344 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:20:23,345 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 24 states have internal predecessors, (28), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 34 states. [2022-04-08 00:20:23,345 INFO L87 Difference]: Start difference. First operand has 34 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 24 states have internal predecessors, (28), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 34 states. [2022-04-08 00:20:23,348 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:20:23,348 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2022-04-08 00:20:23,348 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-04-08 00:20:23,349 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:20:23,349 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:20:23,350 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:20:23,350 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:20:23,350 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 24 states have internal predecessors, (28), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 00:20:23,357 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 38 transitions. [2022-04-08 00:20:23,358 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 38 transitions. Word has length 19 [2022-04-08 00:20:23,358 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:20:23,358 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 38 transitions. [2022-04-08 00:20:23,358 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 00:20:23,358 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-04-08 00:20:23,360 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-04-08 00:20:23,360 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:20:23,360 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 00:20:23,377 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-08 00:20:23,570 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:20:23,571 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:20:23,571 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:20:23,575 INFO L85 PathProgramCache]: Analyzing trace with hash -554838191, now seen corresponding path program 1 times [2022-04-08 00:20:23,575 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:20:23,575 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [470306401] [2022-04-08 00:20:23,575 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:20:23,576 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:20:23,593 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:20:23,593 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1613900906] [2022-04-08 00:20:23,593 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:20:23,593 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:20:23,594 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:20:23,594 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 00:20:23,596 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-08 00:20:23,640 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:20:23,641 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-08 00:20:23,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:20:23,653 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:20:24,001 INFO L272 TraceCheckUtils]: 0: Hoare triple {425#true} [87] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {425#true} is VALID [2022-04-08 00:20:24,001 INFO L290 TraceCheckUtils]: 1: Hoare triple {425#true} [89] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {425#true} is VALID [2022-04-08 00:20:24,001 INFO L290 TraceCheckUtils]: 2: Hoare triple {425#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {425#true} is VALID [2022-04-08 00:20:24,001 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {425#true} {425#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {425#true} is VALID [2022-04-08 00:20:24,002 INFO L272 TraceCheckUtils]: 4: Hoare triple {425#true} [88] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {425#true} is VALID [2022-04-08 00:20:24,002 INFO L290 TraceCheckUtils]: 5: Hoare triple {425#true} [91] mainENTRY-->L29: Formula: (= v_main_~A~0_2 |v_main_#t~nondet1_2|) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_2, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {425#true} is VALID [2022-04-08 00:20:24,002 INFO L272 TraceCheckUtils]: 6: Hoare triple {425#true} [93] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {425#true} is VALID [2022-04-08 00:20:24,012 INFO L290 TraceCheckUtils]: 7: Hoare triple {425#true} [95] assume_abort_if_notENTRY-->L16: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {451#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 00:20:24,013 INFO L290 TraceCheckUtils]: 8: Hoare triple {451#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [100] L16-->L16-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {455#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 00:20:24,013 INFO L290 TraceCheckUtils]: 9: Hoare triple {455#(not (= |assume_abort_if_not_#in~cond| 0))} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {455#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 00:20:24,014 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {455#(not (= |assume_abort_if_not_#in~cond| 0))} {425#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {462#(<= (mod main_~A~0 4294967296) 5)} is VALID [2022-04-08 00:20:24,014 INFO L290 TraceCheckUtils]: 11: Hoare triple {462#(<= (mod main_~A~0 4294967296) 5)} [94] L29-1-->L34-2: Formula: (and (= v_main_~B~0_4 v_main_~b~0_6) (= v_main_~q~0_5 0) (= v_main_~B~0_4 1) (= v_main_~A~0_6 v_main_~r~0_3)) InVars {main_~A~0=v_main_~A~0_6} OutVars{main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_4, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_6, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_~B~0, main_~b~0, main_~r~0] {466#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:24,015 INFO L290 TraceCheckUtils]: 12: Hoare triple {466#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {466#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:24,015 INFO L290 TraceCheckUtils]: 13: Hoare triple {466#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) InVars {main_~b~0=v_main_~b~0_12, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {473#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:24,016 INFO L290 TraceCheckUtils]: 14: Hoare triple {473#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {473#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:24,016 INFO L290 TraceCheckUtils]: 15: Hoare triple {473#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [104] L35-->L43-2: Formula: (not (<= (mod v_main_~b~0_10 4294967296) (mod v_main_~r~0_8 4294967296))) InVars {main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {480#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-08 00:20:24,018 INFO L290 TraceCheckUtils]: 16: Hoare triple {480#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (= main_~q~0 0))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {480#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-08 00:20:24,019 INFO L272 TraceCheckUtils]: 17: Hoare triple {480#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (= main_~q~0 0))} [108] L39-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {487#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 00:20:24,019 INFO L290 TraceCheckUtils]: 18: Hoare triple {487#(<= 1 |__VERIFIER_assert_#in~cond|)} [110] __VERIFIER_assertENTRY-->L19: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {491#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 00:20:24,020 INFO L290 TraceCheckUtils]: 19: Hoare triple {491#(<= 1 __VERIFIER_assert_~cond)} [114] L19-->L20: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {426#false} is VALID [2022-04-08 00:20:24,020 INFO L290 TraceCheckUtils]: 20: Hoare triple {426#false} [118] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {426#false} is VALID [2022-04-08 00:20:24,020 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 00:20:24,020 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 00:20:24,440 INFO L290 TraceCheckUtils]: 20: Hoare triple {426#false} [118] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {426#false} is VALID [2022-04-08 00:20:24,441 INFO L290 TraceCheckUtils]: 19: Hoare triple {491#(<= 1 __VERIFIER_assert_~cond)} [114] L19-->L20: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {426#false} is VALID [2022-04-08 00:20:24,441 INFO L290 TraceCheckUtils]: 18: Hoare triple {487#(<= 1 |__VERIFIER_assert_#in~cond|)} [110] __VERIFIER_assertENTRY-->L19: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {491#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 00:20:24,443 INFO L272 TraceCheckUtils]: 17: Hoare triple {507#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [108] L39-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {487#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 00:20:24,443 INFO L290 TraceCheckUtils]: 16: Hoare triple {507#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {507#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-08 00:20:24,443 INFO L290 TraceCheckUtils]: 15: Hoare triple {514#(or (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)) (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)))} [104] L35-->L43-2: Formula: (not (<= (mod v_main_~b~0_10 4294967296) (mod v_main_~r~0_8 4294967296))) InVars {main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {507#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-08 00:20:24,444 INFO L290 TraceCheckUtils]: 14: Hoare triple {514#(or (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)) (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {514#(or (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)) (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-08 00:20:26,469 WARN L290 TraceCheckUtils]: 13: Hoare triple {521#(or (<= (mod (* main_~b~0 2) 4294967296) (mod main_~r~0 4294967296)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~q~0 (* main_~b~0 2))) 4294967296)))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) InVars {main_~b~0=v_main_~b~0_12, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {514#(or (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)) (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)))} is UNKNOWN [2022-04-08 00:20:26,470 INFO L290 TraceCheckUtils]: 12: Hoare triple {521#(or (<= (mod (* main_~b~0 2) 4294967296) (mod main_~r~0 4294967296)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~q~0 (* main_~b~0 2))) 4294967296)))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {521#(or (<= (mod (* main_~b~0 2) 4294967296) (mod main_~r~0 4294967296)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~q~0 (* main_~b~0 2))) 4294967296)))} is VALID [2022-04-08 00:20:26,471 INFO L290 TraceCheckUtils]: 11: Hoare triple {425#true} [94] L29-1-->L34-2: Formula: (and (= v_main_~B~0_4 v_main_~b~0_6) (= v_main_~q~0_5 0) (= v_main_~B~0_4 1) (= v_main_~A~0_6 v_main_~r~0_3)) InVars {main_~A~0=v_main_~A~0_6} OutVars{main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_4, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_6, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_~B~0, main_~b~0, main_~r~0] {521#(or (<= (mod (* main_~b~0 2) 4294967296) (mod main_~r~0 4294967296)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~q~0 (* main_~b~0 2))) 4294967296)))} is VALID [2022-04-08 00:20:26,471 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {425#true} {425#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {425#true} is VALID [2022-04-08 00:20:26,471 INFO L290 TraceCheckUtils]: 9: Hoare triple {425#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {425#true} is VALID [2022-04-08 00:20:26,471 INFO L290 TraceCheckUtils]: 8: Hoare triple {425#true} [100] L16-->L16-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {425#true} is VALID [2022-04-08 00:20:26,471 INFO L290 TraceCheckUtils]: 7: Hoare triple {425#true} [95] assume_abort_if_notENTRY-->L16: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {425#true} is VALID [2022-04-08 00:20:26,472 INFO L272 TraceCheckUtils]: 6: Hoare triple {425#true} [93] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {425#true} is VALID [2022-04-08 00:20:26,472 INFO L290 TraceCheckUtils]: 5: Hoare triple {425#true} [91] mainENTRY-->L29: Formula: (= v_main_~A~0_2 |v_main_#t~nondet1_2|) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_2, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {425#true} is VALID [2022-04-08 00:20:26,472 INFO L272 TraceCheckUtils]: 4: Hoare triple {425#true} [88] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {425#true} is VALID [2022-04-08 00:20:26,472 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {425#true} {425#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {425#true} is VALID [2022-04-08 00:20:26,472 INFO L290 TraceCheckUtils]: 2: Hoare triple {425#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {425#true} is VALID [2022-04-08 00:20:26,472 INFO L290 TraceCheckUtils]: 1: Hoare triple {425#true} [89] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {425#true} is VALID [2022-04-08 00:20:26,472 INFO L272 TraceCheckUtils]: 0: Hoare triple {425#true} [87] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {425#true} is VALID [2022-04-08 00:20:26,473 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 00:20:26,473 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:20:26,473 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [470306401] [2022-04-08 00:20:26,473 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:20:26,473 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1613900906] [2022-04-08 00:20:26,473 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1613900906] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 00:20:26,473 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 00:20:26,473 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 7] total 13 [2022-04-08 00:20:26,473 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1659498537] [2022-04-08 00:20:26,474 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 00:20:26,474 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 1.8461538461538463) internal successors, (24), 11 states have internal predecessors, (24), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 21 [2022-04-08 00:20:26,474 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:20:26,474 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 1.8461538461538463) internal successors, (24), 11 states have internal predecessors, (24), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 00:20:28,537 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 31 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 00:20:28,537 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 00:20:28,537 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:20:28,538 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 00:20:28,538 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=119, Unknown=0, NotChecked=0, Total=156 [2022-04-08 00:20:28,538 INFO L87 Difference]: Start difference. First operand 34 states and 38 transitions. Second operand has 13 states, 13 states have (on average 1.8461538461538463) internal successors, (24), 11 states have internal predecessors, (24), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 00:20:31,026 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:20:33,039 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:20:35,917 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:20:38,199 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:20:41,617 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:20:46,233 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [] [2022-04-08 00:20:50,372 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:20:52,384 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:20:54,305 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:20:54,306 INFO L93 Difference]: Finished difference Result 64 states and 80 transitions. [2022-04-08 00:20:54,306 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 00:20:54,306 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 1.8461538461538463) internal successors, (24), 11 states have internal predecessors, (24), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 21 [2022-04-08 00:20:54,306 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:20:54,306 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 1.8461538461538463) internal successors, (24), 11 states have internal predecessors, (24), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 00:20:54,313 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 77 transitions. [2022-04-08 00:20:54,313 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 1.8461538461538463) internal successors, (24), 11 states have internal predecessors, (24), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 00:20:54,315 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 77 transitions. [2022-04-08 00:20:54,315 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 77 transitions. [2022-04-08 00:20:56,567 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 76 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 00:20:56,569 INFO L225 Difference]: With dead ends: 64 [2022-04-08 00:20:56,571 INFO L226 Difference]: Without dead ends: 59 [2022-04-08 00:20:56,572 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 29 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 43 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=72, Invalid=234, Unknown=0, NotChecked=0, Total=306 [2022-04-08 00:20:56,574 INFO L913 BasicCegarLoop]: 21 mSDtfsCounter, 48 mSDsluCounter, 139 mSDsCounter, 0 mSdLazyCounter, 190 mSolverCounterSat, 23 mSolverCounterUnsat, 8 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 18.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 51 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 221 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 190 IncrementalHoareTripleChecker+Invalid, 8 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 18.3s IncrementalHoareTripleChecker+Time [2022-04-08 00:20:56,577 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [51 Valid, 160 Invalid, 221 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 190 Invalid, 8 Unknown, 0 Unchecked, 18.3s Time] [2022-04-08 00:20:56,577 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-04-08 00:20:56,596 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 48. [2022-04-08 00:20:56,596 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:20:56,596 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand has 48 states, 35 states have (on average 1.2571428571428571) internal successors, (44), 36 states have internal predecessors, (44), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 00:20:56,596 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand has 48 states, 35 states have (on average 1.2571428571428571) internal successors, (44), 36 states have internal predecessors, (44), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 00:20:56,597 INFO L87 Difference]: Start difference. First operand 59 states. Second operand has 48 states, 35 states have (on average 1.2571428571428571) internal successors, (44), 36 states have internal predecessors, (44), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 00:20:56,606 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:20:56,606 INFO L93 Difference]: Finished difference Result 59 states and 72 transitions. [2022-04-08 00:20:56,606 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 72 transitions. [2022-04-08 00:20:56,610 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:20:56,610 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:20:56,611 INFO L74 IsIncluded]: Start isIncluded. First operand has 48 states, 35 states have (on average 1.2571428571428571) internal successors, (44), 36 states have internal predecessors, (44), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 59 states. [2022-04-08 00:20:56,611 INFO L87 Difference]: Start difference. First operand has 48 states, 35 states have (on average 1.2571428571428571) internal successors, (44), 36 states have internal predecessors, (44), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 59 states. [2022-04-08 00:20:56,613 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:20:56,613 INFO L93 Difference]: Finished difference Result 59 states and 72 transitions. [2022-04-08 00:20:56,613 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 72 transitions. [2022-04-08 00:20:56,613 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:20:56,613 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:20:56,613 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:20:56,613 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:20:56,614 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 48 states, 35 states have (on average 1.2571428571428571) internal successors, (44), 36 states have internal predecessors, (44), 7 states have call successors, (7), 6 states have call predecessors, (7), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 00:20:56,615 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 56 transitions. [2022-04-08 00:20:56,615 INFO L78 Accepts]: Start accepts. Automaton has 48 states and 56 transitions. Word has length 21 [2022-04-08 00:20:56,615 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:20:56,615 INFO L478 AbstractCegarLoop]: Abstraction has 48 states and 56 transitions. [2022-04-08 00:20:56,615 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 1.8461538461538463) internal successors, (24), 11 states have internal predecessors, (24), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 00:20:56,615 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 56 transitions. [2022-04-08 00:20:56,616 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-08 00:20:56,616 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:20:56,616 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 00:20:56,634 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-08 00:20:56,824 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-08 00:20:56,824 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:20:56,825 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:20:56,825 INFO L85 PathProgramCache]: Analyzing trace with hash 1600606598, now seen corresponding path program 1 times [2022-04-08 00:20:56,825 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:20:56,825 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1150059015] [2022-04-08 00:20:56,825 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:20:56,825 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:20:56,838 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:20:56,838 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1680115207] [2022-04-08 00:20:56,838 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:20:56,838 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:20:56,839 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:20:56,840 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 00:20:56,846 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-08 00:20:56,872 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:20:56,873 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 00:20:56,879 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:20:56,879 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:20:56,959 INFO L272 TraceCheckUtils]: 0: Hoare triple {846#true} [87] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {846#true} is VALID [2022-04-08 00:20:56,959 INFO L290 TraceCheckUtils]: 1: Hoare triple {846#true} [89] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {846#true} is VALID [2022-04-08 00:20:56,960 INFO L290 TraceCheckUtils]: 2: Hoare triple {846#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {846#true} is VALID [2022-04-08 00:20:56,960 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {846#true} {846#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {846#true} is VALID [2022-04-08 00:20:56,960 INFO L272 TraceCheckUtils]: 4: Hoare triple {846#true} [88] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {846#true} is VALID [2022-04-08 00:20:56,960 INFO L290 TraceCheckUtils]: 5: Hoare triple {846#true} [91] mainENTRY-->L29: Formula: (= v_main_~A~0_2 |v_main_#t~nondet1_2|) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_2, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {846#true} is VALID [2022-04-08 00:20:56,960 INFO L272 TraceCheckUtils]: 6: Hoare triple {846#true} [93] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {846#true} is VALID [2022-04-08 00:20:56,960 INFO L290 TraceCheckUtils]: 7: Hoare triple {846#true} [95] assume_abort_if_notENTRY-->L16: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {846#true} is VALID [2022-04-08 00:20:56,960 INFO L290 TraceCheckUtils]: 8: Hoare triple {846#true} [100] L16-->L16-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {846#true} is VALID [2022-04-08 00:20:56,960 INFO L290 TraceCheckUtils]: 9: Hoare triple {846#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {846#true} is VALID [2022-04-08 00:20:56,961 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {846#true} {846#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {846#true} is VALID [2022-04-08 00:20:56,961 INFO L290 TraceCheckUtils]: 11: Hoare triple {846#true} [94] L29-1-->L34-2: Formula: (and (= v_main_~B~0_4 v_main_~b~0_6) (= v_main_~q~0_5 0) (= v_main_~B~0_4 1) (= v_main_~A~0_6 v_main_~r~0_3)) InVars {main_~A~0=v_main_~A~0_6} OutVars{main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_4, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_6, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_~B~0, main_~b~0, main_~r~0] {884#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} is VALID [2022-04-08 00:20:56,962 INFO L290 TraceCheckUtils]: 12: Hoare triple {884#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {884#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} is VALID [2022-04-08 00:20:56,963 INFO L290 TraceCheckUtils]: 13: Hoare triple {884#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} [104] L35-->L43-2: Formula: (not (<= (mod v_main_~b~0_10 4294967296) (mod v_main_~r~0_8 4294967296))) InVars {main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {884#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} is VALID [2022-04-08 00:20:56,963 INFO L290 TraceCheckUtils]: 14: Hoare triple {884#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {884#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} is VALID [2022-04-08 00:20:56,963 INFO L272 TraceCheckUtils]: 15: Hoare triple {884#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} [108] L39-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {846#true} is VALID [2022-04-08 00:20:56,963 INFO L290 TraceCheckUtils]: 16: Hoare triple {846#true} [110] __VERIFIER_assertENTRY-->L19: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {846#true} is VALID [2022-04-08 00:20:56,963 INFO L290 TraceCheckUtils]: 17: Hoare triple {846#true} [115] L19-->L19-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {846#true} is VALID [2022-04-08 00:20:56,964 INFO L290 TraceCheckUtils]: 18: Hoare triple {846#true} [120] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {846#true} is VALID [2022-04-08 00:20:56,966 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {846#true} {884#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} [124] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {884#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} is VALID [2022-04-08 00:20:56,966 INFO L290 TraceCheckUtils]: 20: Hoare triple {884#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} [112] L39-1-->L43: Formula: (let ((.cse0 (mod v_main_~b~0_5 4294967296))) (and (not (= (mod v_main_~B~0_3 4294967296) .cse0)) (= v_main_~b~0_4 (div .cse0 2)) (= v_main_~q~0_3 (* v_main_~q~0_4 2)))) InVars {main_~q~0=v_main_~q~0_4, main_~B~0=v_main_~B~0_3, main_~b~0=v_main_~b~0_5} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_3, main_~b~0=v_main_~b~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0] {847#false} is VALID [2022-04-08 00:20:56,966 INFO L290 TraceCheckUtils]: 21: Hoare triple {847#false} [116] L43-->L43-2: Formula: (and (= (+ v_main_~q~0_7 1) v_main_~q~0_6) (= v_main_~r~0_4 (+ (* (- 1) v_main_~b~0_7) v_main_~r~0_5)) (<= (mod v_main_~b~0_7 4294967296) (mod v_main_~r~0_5 4294967296))) InVars {main_~q~0=v_main_~q~0_7, main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_5} OutVars{main_~q~0=v_main_~q~0_6, main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~r~0] {847#false} is VALID [2022-04-08 00:20:56,967 INFO L290 TraceCheckUtils]: 22: Hoare triple {847#false} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {847#false} is VALID [2022-04-08 00:20:56,967 INFO L272 TraceCheckUtils]: 23: Hoare triple {847#false} [108] L39-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {847#false} is VALID [2022-04-08 00:20:56,967 INFO L290 TraceCheckUtils]: 24: Hoare triple {847#false} [110] __VERIFIER_assertENTRY-->L19: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {847#false} is VALID [2022-04-08 00:20:56,967 INFO L290 TraceCheckUtils]: 25: Hoare triple {847#false} [114] L19-->L20: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {847#false} is VALID [2022-04-08 00:20:56,967 INFO L290 TraceCheckUtils]: 26: Hoare triple {847#false} [118] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {847#false} is VALID [2022-04-08 00:20:56,967 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 00:20:56,967 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 00:20:56,967 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:20:56,968 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1150059015] [2022-04-08 00:20:56,968 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:20:56,968 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1680115207] [2022-04-08 00:20:56,968 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1680115207] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 00:20:56,968 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 00:20:56,968 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 00:20:56,968 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [947465398] [2022-04-08 00:20:56,968 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 00:20:56,968 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 27 [2022-04-08 00:20:56,969 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:20:56,969 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 00:20:56,991 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 00:20:56,991 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 00:20:56,992 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:20:56,992 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 00:20:56,992 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 00:20:56,992 INFO L87 Difference]: Start difference. First operand 48 states and 56 transitions. Second operand has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 00:20:57,067 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:20:57,067 INFO L93 Difference]: Finished difference Result 66 states and 76 transitions. [2022-04-08 00:20:57,067 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 00:20:57,067 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 27 [2022-04-08 00:20:57,067 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:20:57,067 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 00:20:57,069 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 48 transitions. [2022-04-08 00:20:57,069 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 00:20:57,070 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 48 transitions. [2022-04-08 00:20:57,070 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 48 transitions. [2022-04-08 00:20:57,104 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 00:20:57,105 INFO L225 Difference]: With dead ends: 66 [2022-04-08 00:20:57,105 INFO L226 Difference]: Without dead ends: 40 [2022-04-08 00:20:57,105 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 00:20:57,106 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 0 mSDsluCounter, 18 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 11 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 00:20:57,106 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 45 Invalid, 11 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 00:20:57,106 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-08 00:20:57,117 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 40. [2022-04-08 00:20:57,117 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:20:57,118 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 40 states, 29 states have (on average 1.2413793103448276) internal successors, (36), 30 states have internal predecessors, (36), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 00:20:57,118 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 40 states, 29 states have (on average 1.2413793103448276) internal successors, (36), 30 states have internal predecessors, (36), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 00:20:57,118 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 40 states, 29 states have (on average 1.2413793103448276) internal successors, (36), 30 states have internal predecessors, (36), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 00:20:57,119 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:20:57,119 INFO L93 Difference]: Finished difference Result 40 states and 46 transitions. [2022-04-08 00:20:57,119 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 46 transitions. [2022-04-08 00:20:57,119 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:20:57,120 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:20:57,120 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 29 states have (on average 1.2413793103448276) internal successors, (36), 30 states have internal predecessors, (36), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 40 states. [2022-04-08 00:20:57,120 INFO L87 Difference]: Start difference. First operand has 40 states, 29 states have (on average 1.2413793103448276) internal successors, (36), 30 states have internal predecessors, (36), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 40 states. [2022-04-08 00:20:57,121 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:20:57,121 INFO L93 Difference]: Finished difference Result 40 states and 46 transitions. [2022-04-08 00:20:57,121 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 46 transitions. [2022-04-08 00:20:57,121 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:20:57,121 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:20:57,121 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:20:57,121 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:20:57,121 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 29 states have (on average 1.2413793103448276) internal successors, (36), 30 states have internal predecessors, (36), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 00:20:57,122 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 46 transitions. [2022-04-08 00:20:57,122 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 46 transitions. Word has length 27 [2022-04-08 00:20:57,122 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:20:57,123 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 46 transitions. [2022-04-08 00:20:57,123 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-08 00:20:57,123 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 46 transitions. [2022-04-08 00:20:57,123 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-08 00:20:57,123 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:20:57,123 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 00:20:57,142 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-08 00:20:57,339 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:20:57,340 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:20:57,340 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:20:57,340 INFO L85 PathProgramCache]: Analyzing trace with hash -1889469796, now seen corresponding path program 2 times [2022-04-08 00:20:57,340 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:20:57,340 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [958351074] [2022-04-08 00:20:57,340 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:20:57,340 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:20:57,353 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:20:57,353 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1802234713] [2022-04-08 00:20:57,353 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 00:20:57,354 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:20:57,354 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:20:57,354 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 00:20:57,355 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-08 00:20:57,386 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 00:20:57,387 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 00:20:57,387 INFO L263 TraceCheckSpWp]: Trace formula consists of 66 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-08 00:20:57,393 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:20:57,393 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:20:57,735 INFO L272 TraceCheckUtils]: 0: Hoare triple {1154#true} [87] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1154#true} is VALID [2022-04-08 00:20:57,735 INFO L290 TraceCheckUtils]: 1: Hoare triple {1154#true} [89] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1154#true} is VALID [2022-04-08 00:20:57,735 INFO L290 TraceCheckUtils]: 2: Hoare triple {1154#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1154#true} is VALID [2022-04-08 00:20:57,735 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1154#true} {1154#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1154#true} is VALID [2022-04-08 00:20:57,735 INFO L272 TraceCheckUtils]: 4: Hoare triple {1154#true} [88] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1154#true} is VALID [2022-04-08 00:20:57,735 INFO L290 TraceCheckUtils]: 5: Hoare triple {1154#true} [91] mainENTRY-->L29: Formula: (= v_main_~A~0_2 |v_main_#t~nondet1_2|) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_2, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {1154#true} is VALID [2022-04-08 00:20:57,736 INFO L272 TraceCheckUtils]: 6: Hoare triple {1154#true} [93] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {1154#true} is VALID [2022-04-08 00:20:57,736 INFO L290 TraceCheckUtils]: 7: Hoare triple {1154#true} [95] assume_abort_if_notENTRY-->L16: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1180#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 00:20:57,738 INFO L290 TraceCheckUtils]: 8: Hoare triple {1180#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [100] L16-->L16-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1184#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 00:20:57,739 INFO L290 TraceCheckUtils]: 9: Hoare triple {1184#(not (= |assume_abort_if_not_#in~cond| 0))} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1184#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 00:20:57,750 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1184#(not (= |assume_abort_if_not_#in~cond| 0))} {1154#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {1191#(<= (mod main_~A~0 4294967296) 5)} is VALID [2022-04-08 00:20:57,753 INFO L290 TraceCheckUtils]: 11: Hoare triple {1191#(<= (mod main_~A~0 4294967296) 5)} [94] L29-1-->L34-2: Formula: (and (= v_main_~B~0_4 v_main_~b~0_6) (= v_main_~q~0_5 0) (= v_main_~B~0_4 1) (= v_main_~A~0_6 v_main_~r~0_3)) InVars {main_~A~0=v_main_~A~0_6} OutVars{main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_4, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_6, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_~B~0, main_~b~0, main_~r~0] {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:57,754 INFO L290 TraceCheckUtils]: 12: Hoare triple {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:57,754 INFO L290 TraceCheckUtils]: 13: Hoare triple {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) InVars {main_~b~0=v_main_~b~0_12, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:57,755 INFO L290 TraceCheckUtils]: 14: Hoare triple {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:57,755 INFO L290 TraceCheckUtils]: 15: Hoare triple {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) InVars {main_~b~0=v_main_~b~0_12, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:57,755 INFO L290 TraceCheckUtils]: 16: Hoare triple {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:57,756 INFO L290 TraceCheckUtils]: 17: Hoare triple {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) InVars {main_~b~0=v_main_~b~0_12, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:57,756 INFO L290 TraceCheckUtils]: 18: Hoare triple {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:57,757 INFO L290 TraceCheckUtils]: 19: Hoare triple {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) InVars {main_~b~0=v_main_~b~0_12, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:57,757 INFO L290 TraceCheckUtils]: 20: Hoare triple {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:57,757 INFO L290 TraceCheckUtils]: 21: Hoare triple {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [104] L35-->L43-2: Formula: (not (<= (mod v_main_~b~0_10 4294967296) (mod v_main_~r~0_8 4294967296))) InVars {main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:57,758 INFO L290 TraceCheckUtils]: 22: Hoare triple {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:57,759 INFO L272 TraceCheckUtils]: 23: Hoare triple {1195#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [108] L39-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {1232#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 00:20:57,759 INFO L290 TraceCheckUtils]: 24: Hoare triple {1232#(<= 1 |__VERIFIER_assert_#in~cond|)} [110] __VERIFIER_assertENTRY-->L19: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1236#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 00:20:57,759 INFO L290 TraceCheckUtils]: 25: Hoare triple {1236#(<= 1 __VERIFIER_assert_~cond)} [114] L19-->L20: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1155#false} is VALID [2022-04-08 00:20:57,759 INFO L290 TraceCheckUtils]: 26: Hoare triple {1155#false} [118] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1155#false} is VALID [2022-04-08 00:20:57,760 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-04-08 00:20:57,760 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 00:20:57,760 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:20:57,760 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [958351074] [2022-04-08 00:20:57,760 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:20:57,760 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1802234713] [2022-04-08 00:20:57,760 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1802234713] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 00:20:57,760 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 00:20:57,760 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 00:20:57,760 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1850530502] [2022-04-08 00:20:57,760 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 00:20:57,761 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 27 [2022-04-08 00:20:57,761 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:20:57,761 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 00:20:57,818 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 00:20:57,818 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 00:20:57,819 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:20:57,819 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 00:20:57,819 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2022-04-08 00:20:57,819 INFO L87 Difference]: Start difference. First operand 40 states and 46 transitions. Second operand has 8 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 00:20:58,518 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:20:58,518 INFO L93 Difference]: Finished difference Result 51 states and 59 transitions. [2022-04-08 00:20:58,518 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 00:20:58,519 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 27 [2022-04-08 00:20:58,519 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:20:58,519 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 00:20:58,520 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 41 transitions. [2022-04-08 00:20:58,520 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 00:20:58,521 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 41 transitions. [2022-04-08 00:20:58,521 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 41 transitions. [2022-04-08 00:20:58,629 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 00:20:58,630 INFO L225 Difference]: With dead ends: 51 [2022-04-08 00:20:58,630 INFO L226 Difference]: Without dead ends: 48 [2022-04-08 00:20:58,631 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-08 00:20:58,631 INFO L913 BasicCegarLoop]: 18 mSDtfsCounter, 21 mSDsluCounter, 70 mSDsCounter, 0 mSdLazyCounter, 76 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 88 SdHoareTripleChecker+Invalid, 81 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 76 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-08 00:20:58,631 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 88 Invalid, 81 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 76 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-08 00:20:58,632 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-08 00:20:58,639 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 35. [2022-04-08 00:20:58,640 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:20:58,640 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 35 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 00:20:58,640 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 35 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 00:20:58,640 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 35 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 00:20:58,641 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:20:58,641 INFO L93 Difference]: Finished difference Result 48 states and 55 transitions. [2022-04-08 00:20:58,641 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 55 transitions. [2022-04-08 00:20:58,642 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:20:58,642 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:20:58,642 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 48 states. [2022-04-08 00:20:58,642 INFO L87 Difference]: Start difference. First operand has 35 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 48 states. [2022-04-08 00:20:58,643 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:20:58,643 INFO L93 Difference]: Finished difference Result 48 states and 55 transitions. [2022-04-08 00:20:58,643 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 55 transitions. [2022-04-08 00:20:58,643 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:20:58,644 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:20:58,644 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:20:58,644 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:20:58,644 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 00:20:58,645 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 39 transitions. [2022-04-08 00:20:58,645 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 39 transitions. Word has length 27 [2022-04-08 00:20:58,645 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:20:58,645 INFO L478 AbstractCegarLoop]: Abstraction has 35 states and 39 transitions. [2022-04-08 00:20:58,645 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-08 00:20:58,645 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-08 00:20:58,645 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-08 00:20:58,646 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:20:58,646 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 00:20:58,665 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-08 00:20:58,862 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:20:58,862 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:20:58,862 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:20:58,863 INFO L85 PathProgramCache]: Analyzing trace with hash 1664896543, now seen corresponding path program 1 times [2022-04-08 00:20:58,863 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:20:58,863 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1627091390] [2022-04-08 00:20:58,863 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:20:58,863 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:20:58,872 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:20:58,873 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [398511653] [2022-04-08 00:20:58,873 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:20:58,873 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:20:58,873 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:20:58,876 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 00:20:58,877 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-08 00:20:58,933 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:20:58,934 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-08 00:20:58,946 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:20:58,947 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:20:59,845 INFO L272 TraceCheckUtils]: 0: Hoare triple {1460#true} [87] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1460#true} is VALID [2022-04-08 00:20:59,845 INFO L290 TraceCheckUtils]: 1: Hoare triple {1460#true} [89] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1460#true} is VALID [2022-04-08 00:20:59,845 INFO L290 TraceCheckUtils]: 2: Hoare triple {1460#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1460#true} is VALID [2022-04-08 00:20:59,845 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1460#true} {1460#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1460#true} is VALID [2022-04-08 00:20:59,846 INFO L272 TraceCheckUtils]: 4: Hoare triple {1460#true} [88] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1460#true} is VALID [2022-04-08 00:20:59,846 INFO L290 TraceCheckUtils]: 5: Hoare triple {1460#true} [91] mainENTRY-->L29: Formula: (= v_main_~A~0_2 |v_main_#t~nondet1_2|) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_2, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {1460#true} is VALID [2022-04-08 00:20:59,846 INFO L272 TraceCheckUtils]: 6: Hoare triple {1460#true} [93] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {1460#true} is VALID [2022-04-08 00:20:59,848 INFO L290 TraceCheckUtils]: 7: Hoare triple {1460#true} [95] assume_abort_if_notENTRY-->L16: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1486#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 00:20:59,848 INFO L290 TraceCheckUtils]: 8: Hoare triple {1486#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [100] L16-->L16-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1490#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 00:20:59,848 INFO L290 TraceCheckUtils]: 9: Hoare triple {1490#(not (= |assume_abort_if_not_#in~cond| 0))} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1490#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 00:20:59,849 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1490#(not (= |assume_abort_if_not_#in~cond| 0))} {1460#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {1497#(<= (mod main_~A~0 4294967296) 5)} is VALID [2022-04-08 00:20:59,849 INFO L290 TraceCheckUtils]: 11: Hoare triple {1497#(<= (mod main_~A~0 4294967296) 5)} [94] L29-1-->L34-2: Formula: (and (= v_main_~B~0_4 v_main_~b~0_6) (= v_main_~q~0_5 0) (= v_main_~B~0_4 1) (= v_main_~A~0_6 v_main_~r~0_3)) InVars {main_~A~0=v_main_~A~0_6} OutVars{main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_4, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_6, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_~B~0, main_~b~0, main_~r~0] {1501#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:59,849 INFO L290 TraceCheckUtils]: 12: Hoare triple {1501#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1501#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:59,850 INFO L290 TraceCheckUtils]: 13: Hoare triple {1501#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) InVars {main_~b~0=v_main_~b~0_12, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {1508#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:59,850 INFO L290 TraceCheckUtils]: 14: Hoare triple {1508#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1508#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:20:59,851 INFO L290 TraceCheckUtils]: 15: Hoare triple {1508#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [104] L35-->L43-2: Formula: (not (<= (mod v_main_~b~0_10 4294967296) (mod v_main_~r~0_8 4294967296))) InVars {main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {1515#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-08 00:20:59,851 INFO L290 TraceCheckUtils]: 16: Hoare triple {1515#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1515#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-08 00:20:59,851 INFO L272 TraceCheckUtils]: 17: Hoare triple {1515#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} [108] L39-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {1460#true} is VALID [2022-04-08 00:20:59,851 INFO L290 TraceCheckUtils]: 18: Hoare triple {1460#true} [110] __VERIFIER_assertENTRY-->L19: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1460#true} is VALID [2022-04-08 00:20:59,851 INFO L290 TraceCheckUtils]: 19: Hoare triple {1460#true} [115] L19-->L19-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1460#true} is VALID [2022-04-08 00:20:59,851 INFO L290 TraceCheckUtils]: 20: Hoare triple {1460#true} [120] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1460#true} is VALID [2022-04-08 00:20:59,852 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1460#true} {1515#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} [124] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {1515#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-08 00:20:59,852 INFO L290 TraceCheckUtils]: 22: Hoare triple {1515#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} [112] L39-1-->L43: Formula: (let ((.cse0 (mod v_main_~b~0_5 4294967296))) (and (not (= (mod v_main_~B~0_3 4294967296) .cse0)) (= v_main_~b~0_4 (div .cse0 2)) (= v_main_~q~0_3 (* v_main_~q~0_4 2)))) InVars {main_~q~0=v_main_~q~0_4, main_~B~0=v_main_~B~0_3, main_~b~0=v_main_~b~0_5} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_3, main_~b~0=v_main_~b~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0] {1537#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (< (mod main_~r~0 4294967296) 2) (= main_~q~0 0))} is VALID [2022-04-08 00:20:59,853 INFO L290 TraceCheckUtils]: 23: Hoare triple {1537#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (< (mod main_~r~0 4294967296) 2) (= main_~q~0 0))} [116] L43-->L43-2: Formula: (and (= (+ v_main_~q~0_7 1) v_main_~q~0_6) (= v_main_~r~0_4 (+ (* (- 1) v_main_~b~0_7) v_main_~r~0_5)) (<= (mod v_main_~b~0_7 4294967296) (mod v_main_~r~0_5 4294967296))) InVars {main_~q~0=v_main_~q~0_7, main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_5} OutVars{main_~q~0=v_main_~q~0_6, main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~r~0] {1541#(and (= (+ main_~A~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~b~0 1) (= (+ (- 1) main_~q~0) 0) (< (mod main_~A~0 4294967296) 2) (<= 1 (mod main_~A~0 4294967296)))} is VALID [2022-04-08 00:20:59,853 INFO L290 TraceCheckUtils]: 24: Hoare triple {1541#(and (= (+ main_~A~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~b~0 1) (= (+ (- 1) main_~q~0) 0) (< (mod main_~A~0 4294967296) 2) (<= 1 (mod main_~A~0 4294967296)))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1541#(and (= (+ main_~A~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~b~0 1) (= (+ (- 1) main_~q~0) 0) (< (mod main_~A~0 4294967296) 2) (<= 1 (mod main_~A~0 4294967296)))} is VALID [2022-04-08 00:20:59,854 INFO L272 TraceCheckUtils]: 25: Hoare triple {1541#(and (= (+ main_~A~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~b~0 1) (= (+ (- 1) main_~q~0) 0) (< (mod main_~A~0 4294967296) 2) (<= 1 (mod main_~A~0 4294967296)))} [108] L39-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {1548#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 00:20:59,855 INFO L290 TraceCheckUtils]: 26: Hoare triple {1548#(<= 1 |__VERIFIER_assert_#in~cond|)} [110] __VERIFIER_assertENTRY-->L19: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1552#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 00:20:59,855 INFO L290 TraceCheckUtils]: 27: Hoare triple {1552#(<= 1 __VERIFIER_assert_~cond)} [114] L19-->L20: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1461#false} is VALID [2022-04-08 00:20:59,855 INFO L290 TraceCheckUtils]: 28: Hoare triple {1461#false} [118] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1461#false} is VALID [2022-04-08 00:20:59,855 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 00:20:59,855 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 00:21:31,512 WARN L855 $PredicateComparison]: unable to prove that (let ((.cse1 (mod (* c_main_~b~0 2) 4294967296)) (.cse0 (mod c_main_~r~0 4294967296))) (or (not (<= (mod c_main_~b~0 4294967296) .cse0)) (= (mod c_main_~A~0 4294967296) (mod (+ (* (div .cse1 2) (* c_main_~q~0 2)) c_main_~r~0) 4294967296)) (<= .cse1 .cse0))) is different from true [2022-04-08 00:21:38,181 INFO L290 TraceCheckUtils]: 28: Hoare triple {1461#false} [118] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1461#false} is VALID [2022-04-08 00:21:38,182 INFO L290 TraceCheckUtils]: 27: Hoare triple {1552#(<= 1 __VERIFIER_assert_~cond)} [114] L19-->L20: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1461#false} is VALID [2022-04-08 00:21:38,182 INFO L290 TraceCheckUtils]: 26: Hoare triple {1548#(<= 1 |__VERIFIER_assert_#in~cond|)} [110] __VERIFIER_assertENTRY-->L19: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1552#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 00:21:38,183 INFO L272 TraceCheckUtils]: 25: Hoare triple {1568#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [108] L39-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {1548#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 00:21:38,184 INFO L290 TraceCheckUtils]: 24: Hoare triple {1568#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1568#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-08 00:21:40,191 WARN L290 TraceCheckUtils]: 23: Hoare triple {1568#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [116] L43-->L43-2: Formula: (and (= (+ v_main_~q~0_7 1) v_main_~q~0_6) (= v_main_~r~0_4 (+ (* (- 1) v_main_~b~0_7) v_main_~r~0_5)) (<= (mod v_main_~b~0_7 4294967296) (mod v_main_~r~0_5 4294967296))) InVars {main_~q~0=v_main_~q~0_7, main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_5} OutVars{main_~q~0=v_main_~q~0_6, main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~r~0] {1568#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is UNKNOWN [2022-04-08 00:21:42,196 WARN L290 TraceCheckUtils]: 22: Hoare triple {1578#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296))} [112] L39-1-->L43: Formula: (let ((.cse0 (mod v_main_~b~0_5 4294967296))) (and (not (= (mod v_main_~B~0_3 4294967296) .cse0)) (= v_main_~b~0_4 (div .cse0 2)) (= v_main_~q~0_3 (* v_main_~q~0_4 2)))) InVars {main_~q~0=v_main_~q~0_4, main_~B~0=v_main_~B~0_3, main_~b~0=v_main_~b~0_5} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_3, main_~b~0=v_main_~b~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0] {1568#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is UNKNOWN [2022-04-08 00:21:42,197 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1460#true} {1578#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296))} [124] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {1578#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296))} is VALID [2022-04-08 00:21:42,197 INFO L290 TraceCheckUtils]: 20: Hoare triple {1460#true} [120] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1460#true} is VALID [2022-04-08 00:21:42,198 INFO L290 TraceCheckUtils]: 19: Hoare triple {1460#true} [115] L19-->L19-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1460#true} is VALID [2022-04-08 00:21:42,198 INFO L290 TraceCheckUtils]: 18: Hoare triple {1460#true} [110] __VERIFIER_assertENTRY-->L19: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1460#true} is VALID [2022-04-08 00:21:42,198 INFO L272 TraceCheckUtils]: 17: Hoare triple {1578#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296))} [108] L39-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {1460#true} is VALID [2022-04-08 00:21:42,198 INFO L290 TraceCheckUtils]: 16: Hoare triple {1578#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1578#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296))} is VALID [2022-04-08 00:21:42,199 INFO L290 TraceCheckUtils]: 15: Hoare triple {1600#(or (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296)) (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)))} [104] L35-->L43-2: Formula: (not (<= (mod v_main_~b~0_10 4294967296) (mod v_main_~r~0_8 4294967296))) InVars {main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {1578#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296))} is VALID [2022-04-08 00:21:42,199 INFO L290 TraceCheckUtils]: 14: Hoare triple {1600#(or (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296)) (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1600#(or (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296)) (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-08 00:21:44,338 WARN L290 TraceCheckUtils]: 13: Hoare triple {1607#(or (= (mod main_~A~0 4294967296) (mod (+ (* (* main_~q~0 2) (div (mod (* main_~b~0 2) 4294967296) 2)) main_~r~0) 4294967296)) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (<= (mod (* main_~b~0 2) 4294967296) (mod main_~r~0 4294967296)))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) InVars {main_~b~0=v_main_~b~0_12, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {1600#(or (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296)) (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)))} is UNKNOWN [2022-04-08 00:21:44,340 INFO L290 TraceCheckUtils]: 12: Hoare triple {1607#(or (= (mod main_~A~0 4294967296) (mod (+ (* (* main_~q~0 2) (div (mod (* main_~b~0 2) 4294967296) 2)) main_~r~0) 4294967296)) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (<= (mod (* main_~b~0 2) 4294967296) (mod main_~r~0 4294967296)))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1607#(or (= (mod main_~A~0 4294967296) (mod (+ (* (* main_~q~0 2) (div (mod (* main_~b~0 2) 4294967296) 2)) main_~r~0) 4294967296)) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (<= (mod (* main_~b~0 2) 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-08 00:21:44,340 INFO L290 TraceCheckUtils]: 11: Hoare triple {1460#true} [94] L29-1-->L34-2: Formula: (and (= v_main_~B~0_4 v_main_~b~0_6) (= v_main_~q~0_5 0) (= v_main_~B~0_4 1) (= v_main_~A~0_6 v_main_~r~0_3)) InVars {main_~A~0=v_main_~A~0_6} OutVars{main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_4, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_6, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_~B~0, main_~b~0, main_~r~0] {1607#(or (= (mod main_~A~0 4294967296) (mod (+ (* (* main_~q~0 2) (div (mod (* main_~b~0 2) 4294967296) 2)) main_~r~0) 4294967296)) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (<= (mod (* main_~b~0 2) 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-08 00:21:44,340 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1460#true} {1460#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {1460#true} is VALID [2022-04-08 00:21:44,341 INFO L290 TraceCheckUtils]: 9: Hoare triple {1460#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1460#true} is VALID [2022-04-08 00:21:44,341 INFO L290 TraceCheckUtils]: 8: Hoare triple {1460#true} [100] L16-->L16-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1460#true} is VALID [2022-04-08 00:21:44,341 INFO L290 TraceCheckUtils]: 7: Hoare triple {1460#true} [95] assume_abort_if_notENTRY-->L16: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1460#true} is VALID [2022-04-08 00:21:44,341 INFO L272 TraceCheckUtils]: 6: Hoare triple {1460#true} [93] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {1460#true} is VALID [2022-04-08 00:21:44,341 INFO L290 TraceCheckUtils]: 5: Hoare triple {1460#true} [91] mainENTRY-->L29: Formula: (= v_main_~A~0_2 |v_main_#t~nondet1_2|) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_2, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {1460#true} is VALID [2022-04-08 00:21:44,341 INFO L272 TraceCheckUtils]: 4: Hoare triple {1460#true} [88] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1460#true} is VALID [2022-04-08 00:21:44,341 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1460#true} {1460#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1460#true} is VALID [2022-04-08 00:21:44,341 INFO L290 TraceCheckUtils]: 2: Hoare triple {1460#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1460#true} is VALID [2022-04-08 00:21:44,341 INFO L290 TraceCheckUtils]: 1: Hoare triple {1460#true} [89] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1460#true} is VALID [2022-04-08 00:21:44,341 INFO L272 TraceCheckUtils]: 0: Hoare triple {1460#true} [87] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1460#true} is VALID [2022-04-08 00:21:44,342 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 2 not checked. [2022-04-08 00:21:44,342 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:21:44,342 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1627091390] [2022-04-08 00:21:44,342 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:21:44,342 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [398511653] [2022-04-08 00:21:44,342 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [398511653] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 00:21:44,342 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 00:21:44,342 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 8] total 16 [2022-04-08 00:21:44,342 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2004898586] [2022-04-08 00:21:44,342 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 00:21:44,343 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.0625) internal successors, (33), 14 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 29 [2022-04-08 00:21:44,343 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:21:44,343 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 2.0625) internal successors, (33), 14 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 00:21:50,721 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 42 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-08 00:21:50,722 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-08 00:21:50,722 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:21:50,722 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-08 00:21:50,723 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=163, Unknown=1, NotChecked=26, Total=240 [2022-04-08 00:21:50,723 INFO L87 Difference]: Start difference. First operand 35 states and 39 transitions. Second operand has 16 states, 16 states have (on average 2.0625) internal successors, (33), 14 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 00:21:57,227 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:22:07,935 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:22:10,857 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:22:13,264 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:22:15,379 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.11s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:22:17,506 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:22:19,640 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:22:21,936 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:22:28,548 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:22:35,044 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:22:37,224 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:22:39,379 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [] [2022-04-08 00:22:43,835 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:22:48,722 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:22:51,097 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:22:53,382 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:23:06,811 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:23:09,230 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:23:11,395 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:23:15,796 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:15,797 INFO L93 Difference]: Finished difference Result 91 states and 112 transitions. [2022-04-08 00:23:15,797 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 00:23:15,797 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.0625) internal successors, (33), 14 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 29 [2022-04-08 00:23:15,797 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:23:15,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.0625) internal successors, (33), 14 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 00:23:15,799 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 82 transitions. [2022-04-08 00:23:15,799 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.0625) internal successors, (33), 14 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 00:23:15,800 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 82 transitions. [2022-04-08 00:23:15,800 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 82 transitions. [2022-04-08 00:23:20,220 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 80 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-08 00:23:20,222 INFO L225 Difference]: With dead ends: 91 [2022-04-08 00:23:20,223 INFO L226 Difference]: Without dead ends: 71 [2022-04-08 00:23:20,223 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 41 SyntacticMatches, 3 SemanticMatches, 18 ConstructedPredicates, 1 IntricatePredicates, 0 DeprecatedPredicates, 75 ImplicationChecksByTransitivity, 12.4s TimeCoverageRelationStatistics Valid=78, Invalid=266, Unknown=2, NotChecked=34, Total=380 [2022-04-08 00:23:20,224 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 41 mSDsluCounter, 146 mSDsCounter, 0 mSdLazyCounter, 165 mSolverCounterSat, 21 mSolverCounterUnsat, 19 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 39.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 43 SdHoareTripleChecker+Valid, 168 SdHoareTripleChecker+Invalid, 252 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 165 IncrementalHoareTripleChecker+Invalid, 19 IncrementalHoareTripleChecker+Unknown, 47 IncrementalHoareTripleChecker+Unchecked, 41.6s IncrementalHoareTripleChecker+Time [2022-04-08 00:23:20,224 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [43 Valid, 168 Invalid, 252 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 165 Invalid, 19 Unknown, 47 Unchecked, 41.6s Time] [2022-04-08 00:23:20,224 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-08 00:23:20,244 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 62. [2022-04-08 00:23:20,244 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:23:20,244 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 62 states, 44 states have (on average 1.1818181818181819) internal successors, (52), 47 states have internal predecessors, (52), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 00:23:20,245 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 62 states, 44 states have (on average 1.1818181818181819) internal successors, (52), 47 states have internal predecessors, (52), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 00:23:20,245 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 62 states, 44 states have (on average 1.1818181818181819) internal successors, (52), 47 states have internal predecessors, (52), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 00:23:20,247 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:20,247 INFO L93 Difference]: Finished difference Result 71 states and 86 transitions. [2022-04-08 00:23:20,247 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 86 transitions. [2022-04-08 00:23:20,247 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:20,247 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:20,247 INFO L74 IsIncluded]: Start isIncluded. First operand has 62 states, 44 states have (on average 1.1818181818181819) internal successors, (52), 47 states have internal predecessors, (52), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 71 states. [2022-04-08 00:23:20,248 INFO L87 Difference]: Start difference. First operand has 62 states, 44 states have (on average 1.1818181818181819) internal successors, (52), 47 states have internal predecessors, (52), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 71 states. [2022-04-08 00:23:20,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:20,250 INFO L93 Difference]: Finished difference Result 71 states and 86 transitions. [2022-04-08 00:23:20,250 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 86 transitions. [2022-04-08 00:23:20,250 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:20,250 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:20,250 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:23:20,250 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:23:20,250 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 62 states, 44 states have (on average 1.1818181818181819) internal successors, (52), 47 states have internal predecessors, (52), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 00:23:20,252 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 72 transitions. [2022-04-08 00:23:20,252 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 72 transitions. Word has length 29 [2022-04-08 00:23:20,252 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:23:20,252 INFO L478 AbstractCegarLoop]: Abstraction has 62 states and 72 transitions. [2022-04-08 00:23:20,252 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 2.0625) internal successors, (33), 14 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 00:23:20,252 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 72 transitions. [2022-04-08 00:23:20,253 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-08 00:23:20,253 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:23:20,253 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 00:23:20,273 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-08 00:23:20,453 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:23:20,453 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:23:20,454 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:23:20,454 INFO L85 PathProgramCache]: Analyzing trace with hash -1490579311, now seen corresponding path program 2 times [2022-04-08 00:23:20,454 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:23:20,454 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [88944134] [2022-04-08 00:23:20,454 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:20,454 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:23:20,465 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:23:20,465 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2145931095] [2022-04-08 00:23:20,465 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 00:23:20,465 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:23:20,465 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:23:20,471 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 00:23:20,472 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-08 00:23:20,526 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 00:23:20,526 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 00:23:20,527 INFO L263 TraceCheckSpWp]: Trace formula consists of 98 conjuncts, 33 conjunts are in the unsatisfiable core [2022-04-08 00:23:20,537 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:20,538 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:23:21,557 INFO L272 TraceCheckUtils]: 0: Hoare triple {2006#true} [87] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2006#true} is VALID [2022-04-08 00:23:21,558 INFO L290 TraceCheckUtils]: 1: Hoare triple {2006#true} [89] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2006#true} is VALID [2022-04-08 00:23:21,558 INFO L290 TraceCheckUtils]: 2: Hoare triple {2006#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2006#true} is VALID [2022-04-08 00:23:21,558 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2006#true} {2006#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2006#true} is VALID [2022-04-08 00:23:21,558 INFO L272 TraceCheckUtils]: 4: Hoare triple {2006#true} [88] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2006#true} is VALID [2022-04-08 00:23:21,558 INFO L290 TraceCheckUtils]: 5: Hoare triple {2006#true} [91] mainENTRY-->L29: Formula: (= v_main_~A~0_2 |v_main_#t~nondet1_2|) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_2, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {2006#true} is VALID [2022-04-08 00:23:21,558 INFO L272 TraceCheckUtils]: 6: Hoare triple {2006#true} [93] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {2006#true} is VALID [2022-04-08 00:23:21,562 INFO L290 TraceCheckUtils]: 7: Hoare triple {2006#true} [95] assume_abort_if_notENTRY-->L16: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2032#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 00:23:21,562 INFO L290 TraceCheckUtils]: 8: Hoare triple {2032#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [100] L16-->L16-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2036#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 00:23:21,563 INFO L290 TraceCheckUtils]: 9: Hoare triple {2036#(not (= |assume_abort_if_not_#in~cond| 0))} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2036#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 00:23:21,563 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2036#(not (= |assume_abort_if_not_#in~cond| 0))} {2006#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {2043#(<= (mod main_~A~0 4294967296) 5)} is VALID [2022-04-08 00:23:21,564 INFO L290 TraceCheckUtils]: 11: Hoare triple {2043#(<= (mod main_~A~0 4294967296) 5)} [94] L29-1-->L34-2: Formula: (and (= v_main_~B~0_4 v_main_~b~0_6) (= v_main_~q~0_5 0) (= v_main_~B~0_4 1) (= v_main_~A~0_6 v_main_~r~0_3)) InVars {main_~A~0=v_main_~A~0_6} OutVars{main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_4, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_6, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_~B~0, main_~b~0, main_~r~0] {2047#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:23:21,564 INFO L290 TraceCheckUtils]: 12: Hoare triple {2047#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2047#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:23:21,564 INFO L290 TraceCheckUtils]: 13: Hoare triple {2047#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) InVars {main_~b~0=v_main_~b~0_12, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {2054#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:23:21,565 INFO L290 TraceCheckUtils]: 14: Hoare triple {2054#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2054#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:23:21,565 INFO L290 TraceCheckUtils]: 15: Hoare triple {2054#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) InVars {main_~b~0=v_main_~b~0_12, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {2061#(and (= main_~b~0 4) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:23:21,566 INFO L290 TraceCheckUtils]: 16: Hoare triple {2061#(and (= main_~b~0 4) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2061#(and (= main_~b~0 4) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:23:21,566 INFO L290 TraceCheckUtils]: 17: Hoare triple {2061#(and (= main_~b~0 4) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) InVars {main_~b~0=v_main_~b~0_12, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {2068#(and (= main_~A~0 main_~r~0) (= main_~b~0 8) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:23:21,566 INFO L290 TraceCheckUtils]: 18: Hoare triple {2068#(and (= main_~A~0 main_~r~0) (= main_~b~0 8) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2068#(and (= main_~A~0 main_~r~0) (= main_~b~0 8) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:23:21,567 INFO L290 TraceCheckUtils]: 19: Hoare triple {2068#(and (= main_~A~0 main_~r~0) (= main_~b~0 8) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [104] L35-->L43-2: Formula: (not (<= (mod v_main_~b~0_10 4294967296) (mod v_main_~r~0_8 4294967296))) InVars {main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {2068#(and (= main_~A~0 main_~r~0) (= main_~b~0 8) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:23:21,567 INFO L290 TraceCheckUtils]: 20: Hoare triple {2068#(and (= main_~A~0 main_~r~0) (= main_~b~0 8) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2068#(and (= main_~A~0 main_~r~0) (= main_~b~0 8) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:23:21,567 INFO L272 TraceCheckUtils]: 21: Hoare triple {2068#(and (= main_~A~0 main_~r~0) (= main_~b~0 8) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [108] L39-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {2006#true} is VALID [2022-04-08 00:23:21,567 INFO L290 TraceCheckUtils]: 22: Hoare triple {2006#true} [110] __VERIFIER_assertENTRY-->L19: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2006#true} is VALID [2022-04-08 00:23:21,568 INFO L290 TraceCheckUtils]: 23: Hoare triple {2006#true} [115] L19-->L19-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2006#true} is VALID [2022-04-08 00:23:21,568 INFO L290 TraceCheckUtils]: 24: Hoare triple {2006#true} [120] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2006#true} is VALID [2022-04-08 00:23:21,568 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {2006#true} {2068#(and (= main_~A~0 main_~r~0) (= main_~b~0 8) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [124] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {2068#(and (= main_~A~0 main_~r~0) (= main_~b~0 8) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:23:21,569 INFO L290 TraceCheckUtils]: 26: Hoare triple {2068#(and (= main_~A~0 main_~r~0) (= main_~b~0 8) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [112] L39-1-->L43: Formula: (let ((.cse0 (mod v_main_~b~0_5 4294967296))) (and (not (= (mod v_main_~B~0_3 4294967296) .cse0)) (= v_main_~b~0_4 (div .cse0 2)) (= v_main_~q~0_3 (* v_main_~q~0_4 2)))) InVars {main_~q~0=v_main_~q~0_4, main_~B~0=v_main_~B~0_3, main_~b~0=v_main_~b~0_5} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_3, main_~b~0=v_main_~b~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0] {2061#(and (= main_~b~0 4) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} is VALID [2022-04-08 00:23:21,571 INFO L290 TraceCheckUtils]: 27: Hoare triple {2061#(and (= main_~b~0 4) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~q~0 0))} [116] L43-->L43-2: Formula: (and (= (+ v_main_~q~0_7 1) v_main_~q~0_6) (= v_main_~r~0_4 (+ (* (- 1) v_main_~b~0_7) v_main_~r~0_5)) (<= (mod v_main_~b~0_7 4294967296) (mod v_main_~r~0_5 4294967296))) InVars {main_~q~0=v_main_~q~0_7, main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_5} OutVars{main_~q~0=v_main_~q~0_6, main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~r~0] {2099#(and (= main_~b~0 4) (<= (mod main_~b~0 4294967296) (mod (+ main_~b~0 main_~r~0) 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~A~0 (+ main_~b~0 main_~r~0)) (= main_~q~0 1))} is VALID [2022-04-08 00:23:21,571 INFO L290 TraceCheckUtils]: 28: Hoare triple {2099#(and (= main_~b~0 4) (<= (mod main_~b~0 4294967296) (mod (+ main_~b~0 main_~r~0) 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~A~0 (+ main_~b~0 main_~r~0)) (= main_~q~0 1))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2099#(and (= main_~b~0 4) (<= (mod main_~b~0 4294967296) (mod (+ main_~b~0 main_~r~0) 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~A~0 (+ main_~b~0 main_~r~0)) (= main_~q~0 1))} is VALID [2022-04-08 00:23:21,573 INFO L272 TraceCheckUtils]: 29: Hoare triple {2099#(and (= main_~b~0 4) (<= (mod main_~b~0 4294967296) (mod (+ main_~b~0 main_~r~0) 4294967296)) (<= (mod main_~A~0 4294967296) 5) (= main_~A~0 (+ main_~b~0 main_~r~0)) (= main_~q~0 1))} [108] L39-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {2106#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 00:23:21,573 INFO L290 TraceCheckUtils]: 30: Hoare triple {2106#(<= 1 |__VERIFIER_assert_#in~cond|)} [110] __VERIFIER_assertENTRY-->L19: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2110#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 00:23:21,573 INFO L290 TraceCheckUtils]: 31: Hoare triple {2110#(<= 1 __VERIFIER_assert_~cond)} [114] L19-->L20: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2007#false} is VALID [2022-04-08 00:23:21,573 INFO L290 TraceCheckUtils]: 32: Hoare triple {2007#false} [118] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2007#false} is VALID [2022-04-08 00:23:21,574 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 2 proven. 14 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-08 00:23:21,574 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 00:23:28,785 WARN L833 $PredicateComparison]: unable to prove that (let ((.cse0 (div (mod c_main_~b~0 4294967296) 2))) (or (not (<= (mod .cse0 4294967296) (mod c_main_~r~0 4294967296))) (= (mod c_main_~A~0 4294967296) (mod (+ (* .cse0 (+ (* c_main_~q~0 2) 1)) (* .cse0 4294967295) c_main_~r~0) 4294967296)))) is different from false [2022-04-08 00:23:30,903 WARN L855 $PredicateComparison]: unable to prove that (let ((.cse0 (div (mod c_main_~b~0 4294967296) 2))) (or (not (<= (mod .cse0 4294967296) (mod c_main_~r~0 4294967296))) (= (mod c_main_~A~0 4294967296) (mod (+ (* .cse0 (+ (* c_main_~q~0 2) 1)) (* .cse0 4294967295) c_main_~r~0) 4294967296)))) is different from true [2022-04-08 00:24:00,605 WARN L833 $PredicateComparison]: unable to prove that (let ((.cse2 (mod c_main_~b~0 4294967296))) (let ((.cse1 (mod c_main_~r~0 4294967296)) (.cse0 (div .cse2 2))) (or (not (<= (mod .cse0 4294967296) .cse1)) (<= .cse2 .cse1) (= (mod c_main_~A~0 4294967296) (mod (+ (* .cse0 (+ (* c_main_~q~0 2) 1)) (* .cse0 4294967295) c_main_~r~0) 4294967296))))) is different from false [2022-04-08 00:24:02,717 WARN L855 $PredicateComparison]: unable to prove that (let ((.cse2 (mod c_main_~b~0 4294967296))) (let ((.cse1 (mod c_main_~r~0 4294967296)) (.cse0 (div .cse2 2))) (or (not (<= (mod .cse0 4294967296) .cse1)) (<= .cse2 .cse1) (= (mod c_main_~A~0 4294967296) (mod (+ (* .cse0 (+ (* c_main_~q~0 2) 1)) (* .cse0 4294967295) c_main_~r~0) 4294967296))))) is different from true [2022-04-08 00:24:30,279 WARN L833 $PredicateComparison]: unable to prove that (let ((.cse2 (mod (* c_main_~b~0 2) 4294967296))) (let ((.cse0 (div .cse2 2)) (.cse1 (mod c_main_~r~0 4294967296))) (or (not (<= (mod .cse0 4294967296) .cse1)) (= (mod c_main_~A~0 4294967296) (mod (+ (* .cse0 (+ (* c_main_~q~0 2) 1)) (* .cse0 4294967295) c_main_~r~0) 4294967296)) (<= .cse2 .cse1)))) is different from false [2022-04-08 00:24:32,386 WARN L855 $PredicateComparison]: unable to prove that (let ((.cse2 (mod (* c_main_~b~0 2) 4294967296))) (let ((.cse0 (div .cse2 2)) (.cse1 (mod c_main_~r~0 4294967296))) (or (not (<= (mod .cse0 4294967296) .cse1)) (= (mod c_main_~A~0 4294967296) (mod (+ (* .cse0 (+ (* c_main_~q~0 2) 1)) (* .cse0 4294967295) c_main_~r~0) 4294967296)) (<= .cse2 .cse1)))) is different from true [2022-04-08 00:24:57,782 WARN L833 $PredicateComparison]: unable to prove that (let ((.cse0 (mod (* c_main_~b~0 4) 4294967296))) (let ((.cse2 (div .cse0 2)) (.cse1 (mod c_main_~r~0 4294967296))) (or (<= .cse0 .cse1) (= (mod c_main_~A~0 4294967296) (mod (+ (* .cse2 (+ (* c_main_~q~0 2) 1)) c_main_~r~0 (* .cse2 4294967295)) 4294967296)) (not (<= (mod .cse2 4294967296) .cse1))))) is different from false [2022-04-08 00:24:59,903 WARN L855 $PredicateComparison]: unable to prove that (let ((.cse0 (mod (* c_main_~b~0 4) 4294967296))) (let ((.cse2 (div .cse0 2)) (.cse1 (mod c_main_~r~0 4294967296))) (or (<= .cse0 .cse1) (= (mod c_main_~A~0 4294967296) (mod (+ (* .cse2 (+ (* c_main_~q~0 2) 1)) c_main_~r~0 (* .cse2 4294967295)) 4294967296)) (not (<= (mod .cse2 4294967296) .cse1))))) is different from true [2022-04-08 00:25:14,180 WARN L232 SmtUtils]: Spent 5.80s on a formula simplification that was a NOOP. DAG size: 12 (called from [L1067] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2022-04-08 00:25:31,391 WARN L855 $PredicateComparison]: unable to prove that (let ((.cse1 (mod (* c_main_~b~0 8) 4294967296))) (let ((.cse0 (mod c_main_~r~0 4294967296)) (.cse2 (div .cse1 2))) (or (not (<= (mod c_main_~b~0 4294967296) .cse0)) (<= .cse1 .cse0) (not (<= (mod .cse2 4294967296) .cse0)) (= (mod c_main_~A~0 4294967296) (mod (+ (* .cse2 (+ (* c_main_~q~0 2) 1)) c_main_~r~0 (* .cse2 4294967295)) 4294967296))))) is different from true [2022-04-08 00:25:48,727 INFO L290 TraceCheckUtils]: 32: Hoare triple {2007#false} [118] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2007#false} is VALID [2022-04-08 00:25:48,728 INFO L290 TraceCheckUtils]: 31: Hoare triple {2110#(<= 1 __VERIFIER_assert_~cond)} [114] L19-->L20: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2007#false} is VALID [2022-04-08 00:25:48,728 INFO L290 TraceCheckUtils]: 30: Hoare triple {2106#(<= 1 |__VERIFIER_assert_#in~cond|)} [110] __VERIFIER_assertENTRY-->L19: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2110#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 00:25:48,729 INFO L272 TraceCheckUtils]: 29: Hoare triple {2126#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [108] L39-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {2106#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 00:25:48,729 INFO L290 TraceCheckUtils]: 28: Hoare triple {2126#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2126#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-08 00:25:50,735 WARN L290 TraceCheckUtils]: 27: Hoare triple {2133#(or (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 (+ main_~q~0 1)) (* main_~b~0 4294967295)) 4294967296)))} [116] L43-->L43-2: Formula: (and (= (+ v_main_~q~0_7 1) v_main_~q~0_6) (= v_main_~r~0_4 (+ (* (- 1) v_main_~b~0_7) v_main_~r~0_5)) (<= (mod v_main_~b~0_7 4294967296) (mod v_main_~r~0_5 4294967296))) InVars {main_~q~0=v_main_~q~0_7, main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_5} OutVars{main_~q~0=v_main_~q~0_6, main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~r~0] {2126#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is UNKNOWN [2022-04-08 00:25:52,805 WARN L290 TraceCheckUtils]: 26: Hoare triple {2137#(or (not (<= (mod (div (mod main_~b~0 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))) (= (mod main_~A~0 4294967296) (mod (+ (* (div (mod main_~b~0 4294967296) 2) 4294967295) main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (+ (* main_~q~0 2) 1))) 4294967296)))} [112] L39-1-->L43: Formula: (let ((.cse0 (mod v_main_~b~0_5 4294967296))) (and (not (= (mod v_main_~B~0_3 4294967296) .cse0)) (= v_main_~b~0_4 (div .cse0 2)) (= v_main_~q~0_3 (* v_main_~q~0_4 2)))) InVars {main_~q~0=v_main_~q~0_4, main_~B~0=v_main_~B~0_3, main_~b~0=v_main_~b~0_5} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_3, main_~b~0=v_main_~b~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0] {2133#(or (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 (+ main_~q~0 1)) (* main_~b~0 4294967295)) 4294967296)))} is UNKNOWN [2022-04-08 00:25:52,807 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {2006#true} {2137#(or (not (<= (mod (div (mod main_~b~0 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))) (= (mod main_~A~0 4294967296) (mod (+ (* (div (mod main_~b~0 4294967296) 2) 4294967295) main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (+ (* main_~q~0 2) 1))) 4294967296)))} [124] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {2137#(or (not (<= (mod (div (mod main_~b~0 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))) (= (mod main_~A~0 4294967296) (mod (+ (* (div (mod main_~b~0 4294967296) 2) 4294967295) main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (+ (* main_~q~0 2) 1))) 4294967296)))} is VALID [2022-04-08 00:25:52,807 INFO L290 TraceCheckUtils]: 24: Hoare triple {2006#true} [120] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2006#true} is VALID [2022-04-08 00:25:52,807 INFO L290 TraceCheckUtils]: 23: Hoare triple {2006#true} [115] L19-->L19-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2006#true} is VALID [2022-04-08 00:25:52,807 INFO L290 TraceCheckUtils]: 22: Hoare triple {2006#true} [110] __VERIFIER_assertENTRY-->L19: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2006#true} is VALID [2022-04-08 00:25:52,807 INFO L272 TraceCheckUtils]: 21: Hoare triple {2137#(or (not (<= (mod (div (mod main_~b~0 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))) (= (mod main_~A~0 4294967296) (mod (+ (* (div (mod main_~b~0 4294967296) 2) 4294967295) main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (+ (* main_~q~0 2) 1))) 4294967296)))} [108] L39-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (mod (+ v_main_~r~0_10 (* v_main_~q~0_9 v_main_~b~0_13)) 4294967296) (mod v_main_~A~0_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, main_~b~0=v_main_~b~0_13, main_~r~0=v_main_~r~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~A~0, main_~b~0, main_~r~0] {2006#true} is VALID [2022-04-08 00:25:52,808 INFO L290 TraceCheckUtils]: 20: Hoare triple {2137#(or (not (<= (mod (div (mod main_~b~0 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))) (= (mod main_~A~0 4294967296) (mod (+ (* (div (mod main_~b~0 4294967296) 2) 4294967295) main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (+ (* main_~q~0 2) 1))) 4294967296)))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2137#(or (not (<= (mod (div (mod main_~b~0 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))) (= (mod main_~A~0 4294967296) (mod (+ (* (div (mod main_~b~0 4294967296) 2) 4294967295) main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (+ (* main_~q~0 2) 1))) 4294967296)))} is VALID [2022-04-08 00:25:52,808 INFO L290 TraceCheckUtils]: 19: Hoare triple {2159#(or (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)) (not (<= (mod (div (mod main_~b~0 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))) (= (mod main_~A~0 4294967296) (mod (+ (* (div (mod main_~b~0 4294967296) 2) 4294967295) main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (+ (* main_~q~0 2) 1))) 4294967296)))} [104] L35-->L43-2: Formula: (not (<= (mod v_main_~b~0_10 4294967296) (mod v_main_~r~0_8 4294967296))) InVars {main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {2137#(or (not (<= (mod (div (mod main_~b~0 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))) (= (mod main_~A~0 4294967296) (mod (+ (* (div (mod main_~b~0 4294967296) 2) 4294967295) main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (+ (* main_~q~0 2) 1))) 4294967296)))} is VALID [2022-04-08 00:25:52,809 INFO L290 TraceCheckUtils]: 18: Hoare triple {2159#(or (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)) (not (<= (mod (div (mod main_~b~0 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))) (= (mod main_~A~0 4294967296) (mod (+ (* (div (mod main_~b~0 4294967296) 2) 4294967295) main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (+ (* main_~q~0 2) 1))) 4294967296)))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2159#(or (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)) (not (<= (mod (div (mod main_~b~0 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))) (= (mod main_~A~0 4294967296) (mod (+ (* (div (mod main_~b~0 4294967296) 2) 4294967295) main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (+ (* main_~q~0 2) 1))) 4294967296)))} is VALID [2022-04-08 00:25:54,916 WARN L290 TraceCheckUtils]: 17: Hoare triple {2166#(or (<= (mod (* main_~b~0 2) 4294967296) (mod main_~r~0 4294967296)) (= (mod (+ main_~r~0 (* 4294967295 (div (mod (* main_~b~0 2) 4294967296) 2)) (* (+ (* main_~q~0 2) 1) (div (mod (* main_~b~0 2) 4294967296) 2))) 4294967296) (mod main_~A~0 4294967296)) (not (<= (mod (div (mod (* main_~b~0 2) 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) InVars {main_~b~0=v_main_~b~0_12, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {2159#(or (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)) (not (<= (mod (div (mod main_~b~0 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))) (= (mod main_~A~0 4294967296) (mod (+ (* (div (mod main_~b~0 4294967296) 2) 4294967295) main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (+ (* main_~q~0 2) 1))) 4294967296)))} is UNKNOWN [2022-04-08 00:25:54,919 INFO L290 TraceCheckUtils]: 16: Hoare triple {2166#(or (<= (mod (* main_~b~0 2) 4294967296) (mod main_~r~0 4294967296)) (= (mod (+ main_~r~0 (* 4294967295 (div (mod (* main_~b~0 2) 4294967296) 2)) (* (+ (* main_~q~0 2) 1) (div (mod (* main_~b~0 2) 4294967296) 2))) 4294967296) (mod main_~A~0 4294967296)) (not (<= (mod (div (mod (* main_~b~0 2) 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2166#(or (<= (mod (* main_~b~0 2) 4294967296) (mod main_~r~0 4294967296)) (= (mod (+ main_~r~0 (* 4294967295 (div (mod (* main_~b~0 2) 4294967296) 2)) (* (+ (* main_~q~0 2) 1) (div (mod (* main_~b~0 2) 4294967296) 2))) 4294967296) (mod main_~A~0 4294967296)) (not (<= (mod (div (mod (* main_~b~0 2) 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))))} is VALID [2022-04-08 00:25:57,032 WARN L290 TraceCheckUtils]: 15: Hoare triple {2173#(or (<= (mod (* main_~b~0 4) 4294967296) (mod main_~r~0 4294967296)) (= (mod main_~A~0 4294967296) (mod (+ (* (div (mod (* main_~b~0 4) 4294967296) 2) 4294967295) main_~r~0 (* (+ (* main_~q~0 2) 1) (div (mod (* main_~b~0 4) 4294967296) 2))) 4294967296)) (not (<= (mod (div (mod (* main_~b~0 4) 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) InVars {main_~b~0=v_main_~b~0_12, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {2166#(or (<= (mod (* main_~b~0 2) 4294967296) (mod main_~r~0 4294967296)) (= (mod (+ main_~r~0 (* 4294967295 (div (mod (* main_~b~0 2) 4294967296) 2)) (* (+ (* main_~q~0 2) 1) (div (mod (* main_~b~0 2) 4294967296) 2))) 4294967296) (mod main_~A~0 4294967296)) (not (<= (mod (div (mod (* main_~b~0 2) 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))))} is UNKNOWN [2022-04-08 00:25:57,035 INFO L290 TraceCheckUtils]: 14: Hoare triple {2173#(or (<= (mod (* main_~b~0 4) 4294967296) (mod main_~r~0 4294967296)) (= (mod main_~A~0 4294967296) (mod (+ (* (div (mod (* main_~b~0 4) 4294967296) 2) 4294967295) main_~r~0 (* (+ (* main_~q~0 2) 1) (div (mod (* main_~b~0 4) 4294967296) 2))) 4294967296)) (not (<= (mod (div (mod (* main_~b~0 4) 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2173#(or (<= (mod (* main_~b~0 4) 4294967296) (mod main_~r~0 4294967296)) (= (mod main_~A~0 4294967296) (mod (+ (* (div (mod (* main_~b~0 4) 4294967296) 2) 4294967295) main_~r~0 (* (+ (* main_~q~0 2) 1) (div (mod (* main_~b~0 4) 4294967296) 2))) 4294967296)) (not (<= (mod (div (mod (* main_~b~0 4) 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))))} is VALID [2022-04-08 00:25:59,163 WARN L290 TraceCheckUtils]: 13: Hoare triple {2180#(or (<= (mod (* main_~b~0 8) 4294967296) (mod main_~r~0 4294967296)) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (not (<= (mod (div (mod (* main_~b~0 8) 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))) (= (mod (+ (* (+ (* main_~q~0 2) 1) (div (mod (* main_~b~0 8) 4294967296) 2)) main_~r~0 (* 4294967295 (div (mod (* main_~b~0 8) 4294967296) 2))) 4294967296) (mod main_~A~0 4294967296)))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) InVars {main_~b~0=v_main_~b~0_12, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {2173#(or (<= (mod (* main_~b~0 4) 4294967296) (mod main_~r~0 4294967296)) (= (mod main_~A~0 4294967296) (mod (+ (* (div (mod (* main_~b~0 4) 4294967296) 2) 4294967295) main_~r~0 (* (+ (* main_~q~0 2) 1) (div (mod (* main_~b~0 4) 4294967296) 2))) 4294967296)) (not (<= (mod (div (mod (* main_~b~0 4) 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))))} is UNKNOWN [2022-04-08 00:25:59,167 INFO L290 TraceCheckUtils]: 12: Hoare triple {2180#(or (<= (mod (* main_~b~0 8) 4294967296) (mod main_~r~0 4294967296)) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (not (<= (mod (div (mod (* main_~b~0 8) 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))) (= (mod (+ (* (+ (* main_~q~0 2) 1) (div (mod (* main_~b~0 8) 4294967296) 2)) main_~r~0 (* 4294967295 (div (mod (* main_~b~0 8) 4294967296) 2))) 4294967296) (mod main_~A~0 4294967296)))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2180#(or (<= (mod (* main_~b~0 8) 4294967296) (mod main_~r~0 4294967296)) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (not (<= (mod (div (mod (* main_~b~0 8) 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))) (= (mod (+ (* (+ (* main_~q~0 2) 1) (div (mod (* main_~b~0 8) 4294967296) 2)) main_~r~0 (* 4294967295 (div (mod (* main_~b~0 8) 4294967296) 2))) 4294967296) (mod main_~A~0 4294967296)))} is VALID [2022-04-08 00:25:59,169 INFO L290 TraceCheckUtils]: 11: Hoare triple {2006#true} [94] L29-1-->L34-2: Formula: (and (= v_main_~B~0_4 v_main_~b~0_6) (= v_main_~q~0_5 0) (= v_main_~B~0_4 1) (= v_main_~A~0_6 v_main_~r~0_3)) InVars {main_~A~0=v_main_~A~0_6} OutVars{main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_4, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_6, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_~B~0, main_~b~0, main_~r~0] {2180#(or (<= (mod (* main_~b~0 8) 4294967296) (mod main_~r~0 4294967296)) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (not (<= (mod (div (mod (* main_~b~0 8) 4294967296) 2) 4294967296) (mod main_~r~0 4294967296))) (= (mod (+ (* (+ (* main_~q~0 2) 1) (div (mod (* main_~b~0 8) 4294967296) 2)) main_~r~0 (* 4294967295 (div (mod (* main_~b~0 8) 4294967296) 2))) 4294967296) (mod main_~A~0 4294967296)))} is VALID [2022-04-08 00:25:59,169 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2006#true} {2006#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {2006#true} is VALID [2022-04-08 00:25:59,169 INFO L290 TraceCheckUtils]: 9: Hoare triple {2006#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2006#true} is VALID [2022-04-08 00:25:59,169 INFO L290 TraceCheckUtils]: 8: Hoare triple {2006#true} [100] L16-->L16-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2006#true} is VALID [2022-04-08 00:25:59,169 INFO L290 TraceCheckUtils]: 7: Hoare triple {2006#true} [95] assume_abort_if_notENTRY-->L16: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2006#true} is VALID [2022-04-08 00:25:59,169 INFO L272 TraceCheckUtils]: 6: Hoare triple {2006#true} [93] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 5) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {2006#true} is VALID [2022-04-08 00:25:59,169 INFO L290 TraceCheckUtils]: 5: Hoare triple {2006#true} [91] mainENTRY-->L29: Formula: (= v_main_~A~0_2 |v_main_#t~nondet1_2|) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_2, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {2006#true} is VALID [2022-04-08 00:25:59,169 INFO L272 TraceCheckUtils]: 4: Hoare triple {2006#true} [88] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2006#true} is VALID [2022-04-08 00:25:59,169 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2006#true} {2006#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2006#true} is VALID [2022-04-08 00:25:59,170 INFO L290 TraceCheckUtils]: 2: Hoare triple {2006#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2006#true} is VALID [2022-04-08 00:25:59,170 INFO L290 TraceCheckUtils]: 1: Hoare triple {2006#true} [89] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2006#true} is VALID [2022-04-08 00:25:59,170 INFO L272 TraceCheckUtils]: 0: Hoare triple {2006#true} [87] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2006#true} is VALID [2022-04-08 00:25:59,170 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 14 not checked. [2022-04-08 00:25:59,170 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:25:59,170 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [88944134] [2022-04-08 00:25:59,170 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:25:59,170 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2145931095] [2022-04-08 00:25:59,170 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2145931095] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 00:25:59,170 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 00:25:59,170 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 11] total 19 [2022-04-08 00:25:59,171 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [374157894] [2022-04-08 00:25:59,171 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 00:25:59,171 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.1578947368421053) internal successors, (41), 17 states have internal predecessors, (41), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 33 [2022-04-08 00:25:59,171 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:25:59,171 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 2.1578947368421053) internal successors, (41), 17 states have internal predecessors, (41), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 00:26:09,727 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 48 inductive. 0 not inductive. 5 times theorem prover too weak to decide inductivity. [2022-04-08 00:26:09,727 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-08 00:26:09,728 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:26:09,728 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-08 00:26:09,728 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=142, Unknown=9, NotChecked=140, Total=342 [2022-04-08 00:26:09,728 INFO L87 Difference]: Start difference. First operand 62 states and 72 transitions. Second operand has 19 states, 19 states have (on average 2.1578947368421053) internal successors, (41), 17 states have internal predecessors, (41), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 00:26:16,131 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:26:18,282 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [] [2022-04-08 00:26:20,714 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [] [2022-04-08 00:26:24,081 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [] [2022-04-08 00:26:26,235 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [] [2022-04-08 00:26:28,431 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:26:30,592 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [] [2022-04-08 00:26:32,828 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:26:36,273 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [] [2022-04-08 00:26:38,434 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.16s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [] [2022-04-08 00:26:40,613 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [] [2022-04-08 00:26:40,944 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:26:40,944 INFO L93 Difference]: Finished difference Result 119 states and 143 transitions. [2022-04-08 00:26:40,944 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 00:26:40,944 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.1578947368421053) internal successors, (41), 17 states have internal predecessors, (41), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 33 [2022-04-08 00:26:40,944 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:26:40,945 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.1578947368421053) internal successors, (41), 17 states have internal predecessors, (41), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 00:26:40,946 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 92 transitions. [2022-04-08 00:26:40,946 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.1578947368421053) internal successors, (41), 17 states have internal predecessors, (41), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 00:26:40,948 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 92 transitions. [2022-04-08 00:26:40,948 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 92 transitions. [2022-04-08 00:26:45,451 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 90 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-08 00:26:45,454 INFO L225 Difference]: With dead ends: 119 [2022-04-08 00:26:45,454 INFO L226 Difference]: Without dead ends: 96 [2022-04-08 00:26:45,455 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 75 GetRequests, 48 SyntacticMatches, 6 SemanticMatches, 21 ConstructedPredicates, 5 IntricatePredicates, 0 DeprecatedPredicates, 45 ImplicationChecksByTransitivity, 22.2s TimeCoverageRelationStatistics Valid=79, Invalid=238, Unknown=9, NotChecked=180, Total=506 [2022-04-08 00:26:45,455 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 44 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 272 mSolverCounterSat, 30 mSolverCounterUnsat, 11 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 24.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 48 SdHoareTripleChecker+Valid, 178 SdHoareTripleChecker+Invalid, 587 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 272 IncrementalHoareTripleChecker+Invalid, 11 IncrementalHoareTripleChecker+Unknown, 274 IncrementalHoareTripleChecker+Unchecked, 26.3s IncrementalHoareTripleChecker+Time [2022-04-08 00:26:45,455 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [48 Valid, 178 Invalid, 587 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 272 Invalid, 11 Unknown, 274 Unchecked, 26.3s Time] [2022-04-08 00:26:45,456 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2022-04-08 00:26:45,493 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 84. [2022-04-08 00:26:45,493 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:26:45,494 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand has 84 states, 60 states have (on average 1.1666666666666667) internal successors, (70), 64 states have internal predecessors, (70), 15 states have call successors, (15), 9 states have call predecessors, (15), 8 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 00:26:45,494 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand has 84 states, 60 states have (on average 1.1666666666666667) internal successors, (70), 64 states have internal predecessors, (70), 15 states have call successors, (15), 9 states have call predecessors, (15), 8 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 00:26:45,494 INFO L87 Difference]: Start difference. First operand 96 states. Second operand has 84 states, 60 states have (on average 1.1666666666666667) internal successors, (70), 64 states have internal predecessors, (70), 15 states have call successors, (15), 9 states have call predecessors, (15), 8 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 00:26:45,497 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:26:45,497 INFO L93 Difference]: Finished difference Result 96 states and 112 transitions. [2022-04-08 00:26:45,497 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 112 transitions. [2022-04-08 00:26:45,497 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:26:45,497 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:26:45,498 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 60 states have (on average 1.1666666666666667) internal successors, (70), 64 states have internal predecessors, (70), 15 states have call successors, (15), 9 states have call predecessors, (15), 8 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) Second operand 96 states. [2022-04-08 00:26:45,498 INFO L87 Difference]: Start difference. First operand has 84 states, 60 states have (on average 1.1666666666666667) internal successors, (70), 64 states have internal predecessors, (70), 15 states have call successors, (15), 9 states have call predecessors, (15), 8 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) Second operand 96 states. [2022-04-08 00:26:45,500 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:26:45,500 INFO L93 Difference]: Finished difference Result 96 states and 112 transitions. [2022-04-08 00:26:45,500 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 112 transitions. [2022-04-08 00:26:45,500 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:26:45,500 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:26:45,500 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:26:45,500 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:26:45,501 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 60 states have (on average 1.1666666666666667) internal successors, (70), 64 states have internal predecessors, (70), 15 states have call successors, (15), 9 states have call predecessors, (15), 8 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 00:26:45,502 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 98 transitions. [2022-04-08 00:26:45,502 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 98 transitions. Word has length 33 [2022-04-08 00:26:45,503 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:26:45,503 INFO L478 AbstractCegarLoop]: Abstraction has 84 states and 98 transitions. [2022-04-08 00:26:45,503 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 2.1578947368421053) internal successors, (41), 17 states have internal predecessors, (41), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 00:26:45,503 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 98 transitions. [2022-04-08 00:26:45,503 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-08 00:26:45,503 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:26:45,503 INFO L499 BasicCegarLoop]: trace histogram [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] [2022-04-08 00:26:45,521 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-08 00:26:45,711 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:26:45,712 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:26:45,712 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:26:45,712 INFO L85 PathProgramCache]: Analyzing trace with hash -1815734547, now seen corresponding path program 3 times [2022-04-08 00:26:45,713 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:26:45,713 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1054259010] [2022-04-08 00:26:45,713 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:26:45,713 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:26:45,722 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:26:45,722 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1258245533] [2022-04-08 00:26:45,722 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-08 00:26:45,734 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:26:45,734 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:26:45,736 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 00:26:45,740 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process