/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/divbin_unwindbound20.i -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 02:27:51,433 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 02:27:51,435 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 02:27:51,473 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 02:27:51,474 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 02:27:51,474 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 02:27:51,475 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 02:27:51,476 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 02:27:51,477 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 02:27:51,478 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 02:27:51,478 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 02:27:51,479 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 02:27:51,479 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 02:27:51,480 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 02:27:51,480 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 02:27:51,481 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 02:27:51,482 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 02:27:51,482 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 02:27:51,484 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 02:27:51,489 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 02:27:51,489 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 02:27:51,490 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 02:27:51,491 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 02:27:51,491 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 02:27:51,492 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 02:27:51,494 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 02:27:51,494 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 02:27:51,494 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 02:27:51,494 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 02:27:51,495 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 02:27:51,495 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 02:27:51,495 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 02:27:51,496 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 02:27:51,496 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 02:27:51,497 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 02:27:51,497 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 02:27:51,497 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 02:27:51,498 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 02:27:51,498 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 02:27:51,498 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 02:27:51,498 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 02:27:51,499 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 02:27:51,500 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-15 02:27:51,516 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 02:27:51,516 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 02:27:51,517 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-15 02:27:51,517 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-15 02:27:51,517 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-15 02:27:51,517 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-15 02:27:51,517 INFO L138 SettingsManager]: * Use SBE=true [2022-04-15 02:27:51,517 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 02:27:51,518 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 02:27:51,518 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 02:27:51,518 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 02:27:51,518 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 02:27:51,518 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 02:27:51,518 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 02:27:51,518 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 02:27:51,518 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 02:27:51,518 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 02:27:51,518 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 02:27:51,518 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 02:27:51,518 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 02:27:51,519 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 02:27:51,519 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-15 02:27:51,519 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-15 02:27:51,519 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-15 02:27:51,519 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-15 02:27:51,522 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 02:27:51,522 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-15 02:27:51,522 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-15 02:27:51,523 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-15 02:27:51,523 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-15 02:27:51,719 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 02:27:51,746 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 02:27:51,749 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 02:27:51,749 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 02:27:51,750 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 02:27:51,752 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/divbin_unwindbound20.i [2022-04-15 02:27:51,809 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/92ff9d260/262160e9f99248d299ebc7a992cded62/FLAGb44b3a6b8 [2022-04-15 02:27:52,281 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 02:27:52,281 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/divbin_unwindbound20.i [2022-04-15 02:27:52,315 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/92ff9d260/262160e9f99248d299ebc7a992cded62/FLAGb44b3a6b8 [2022-04-15 02:27:52,676 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/92ff9d260/262160e9f99248d299ebc7a992cded62 [2022-04-15 02:27:52,677 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 02:27:52,678 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-15 02:27:52,679 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 02:27:52,679 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 02:27:52,681 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 02:27:52,682 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 02:27:52" (1/1) ... [2022-04-15 02:27:52,682 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@434b452d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 02:27:52, skipping insertion in model container [2022-04-15 02:27:52,682 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 02:27:52" (1/1) ... [2022-04-15 02:27:52,695 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 02:27:52,718 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 02:27:52,936 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/divbin_unwindbound20.i[950,963] [2022-04-15 02:27:52,981 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 02:27:53,044 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 02:27:53,063 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/divbin_unwindbound20.i[950,963] [2022-04-15 02:27:53,079 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 02:27:53,088 INFO L208 MainTranslator]: Completed translation [2022-04-15 02:27:53,088 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 02:27:53 WrapperNode [2022-04-15 02:27:53,088 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 02:27:53,091 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 02:27:53,091 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 02:27:53,091 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 02:27:53,110 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 02:27:53" (1/1) ... [2022-04-15 02:27:53,110 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 02:27:53" (1/1) ... [2022-04-15 02:27:53,145 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 02:27:53" (1/1) ... [2022-04-15 02:27:53,146 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 02:27:53" (1/1) ... [2022-04-15 02:27:53,150 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 02:27:53" (1/1) ... [2022-04-15 02:27:53,152 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 02:27:53" (1/1) ... [2022-04-15 02:27:53,153 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 02:27:53" (1/1) ... [2022-04-15 02:27:53,154 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 02:27:53,155 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 02:27:53,155 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 02:27:53,155 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 02:27:53,171 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 02:27:53" (1/1) ... [2022-04-15 02:27:53,221 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 02:27:53,259 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 02:27:53,268 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-15 02:27:53,343 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-15 02:27:53,367 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 02:27:53,367 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 02:27:53,367 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 02:27:53,367 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 02:27:53,367 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 02:27:53,367 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 02:27:53,368 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 02:27:53,368 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 02:27:53,370 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_perror_fail [2022-04-15 02:27:53,370 INFO L130 BoogieDeclarations]: Found specification of procedure __assert [2022-04-15 02:27:53,370 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 02:27:53,370 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 02:27:53,370 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-15 02:27:53,370 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 02:27:53,370 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 02:27:53,370 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 02:27:53,370 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 02:27:53,370 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 02:27:53,371 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 02:27:53,371 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 02:27:53,371 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 02:27:53,371 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 02:27:53,435 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 02:27:53,436 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 02:27:53,646 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 02:27:53,651 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 02:27:53,652 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-15 02:27:53,653 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 02:27:53 BoogieIcfgContainer [2022-04-15 02:27:53,653 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 02:27:53,653 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-15 02:27:53,654 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-15 02:27:53,655 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-15 02:27:53,660 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 02:27:53" (1/1) ... [2022-04-15 02:27:53,661 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-15 02:27:53,690 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 15.04 02:27:53 BasicIcfg [2022-04-15 02:27:53,690 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-15 02:27:53,691 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 02:27:53,691 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 02:27:53,761 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 02:27:53,762 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 02:27:52" (1/4) ... [2022-04-15 02:27:53,762 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7c8808b5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 02:27:53, skipping insertion in model container [2022-04-15 02:27:53,762 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 02:27:53" (2/4) ... [2022-04-15 02:27:53,763 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7c8808b5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 02:27:53, skipping insertion in model container [2022-04-15 02:27:53,763 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 02:27:53" (3/4) ... [2022-04-15 02:27:53,763 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7c8808b5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 15.04 02:27:53, skipping insertion in model container [2022-04-15 02:27:53,763 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 15.04 02:27:53" (4/4) ... [2022-04-15 02:27:53,764 INFO L111 eAbstractionObserver]: Analyzing ICFG divbin_unwindbound20.iqvasr [2022-04-15 02:27:53,767 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-15 02:27:53,767 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 02:27:53,843 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 02:27:53,855 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-15 02:27:53,855 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 02:27:53,881 INFO L276 IsEmpty]: Start isEmpty. Operand has 33 states, 21 states have (on average 1.4761904761904763) internal successors, (31), 22 states have internal predecessors, (31), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 02:27:53,886 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-15 02:27:53,886 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 02:27:53,886 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] [2022-04-15 02:27:53,887 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 02:27:53,891 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 02:27:53,891 INFO L85 PathProgramCache]: Analyzing trace with hash 35225450, now seen corresponding path program 1 times [2022-04-15 02:27:53,898 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 02:27:53,898 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1002735897] [2022-04-15 02:27:53,898 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:27:53,899 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 02:27:53,987 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:27:54,048 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 02:27:54,059 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:27:54,078 INFO L290 TraceCheckUtils]: 0: Hoare triple {49#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [94] 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) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0) (= v_~counter~0_5 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_5, #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[~counter~0, #NULL.offset, #NULL.base] {36#true} is VALID [2022-04-15 02:27:54,079 INFO L290 TraceCheckUtils]: 1: Hoare triple {36#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#true} is VALID [2022-04-15 02:27:54,079 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {36#true} {36#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#true} is VALID [2022-04-15 02:27:54,079 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 02:27:54,091 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:27:54,097 INFO L290 TraceCheckUtils]: 0: Hoare triple {36#true} [100] 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] {36#true} is VALID [2022-04-15 02:27:54,099 INFO L290 TraceCheckUtils]: 1: Hoare triple {36#true} [102] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-15 02:27:54,099 INFO L290 TraceCheckUtils]: 2: Hoare triple {37#false} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-15 02:27:54,099 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37#false} {36#true} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {37#false} is VALID [2022-04-15 02:27:54,100 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-15 02:27:54,101 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:27:54,106 INFO L290 TraceCheckUtils]: 0: Hoare triple {36#true} [100] 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] {36#true} is VALID [2022-04-15 02:27:54,106 INFO L290 TraceCheckUtils]: 1: Hoare triple {36#true} [102] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-15 02:27:54,106 INFO L290 TraceCheckUtils]: 2: Hoare triple {37#false} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-15 02:27:54,107 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37#false} {37#false} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {37#false} is VALID [2022-04-15 02:27:54,108 INFO L272 TraceCheckUtils]: 0: Hoare triple {36#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {49#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 02:27:54,108 INFO L290 TraceCheckUtils]: 1: Hoare triple {49#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [94] 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) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0) (= v_~counter~0_5 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_5, #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[~counter~0, #NULL.offset, #NULL.base] {36#true} is VALID [2022-04-15 02:27:54,108 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#true} is VALID [2022-04-15 02:27:54,108 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#true} {36#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#true} is VALID [2022-04-15 02:27:54,109 INFO L272 TraceCheckUtils]: 4: Hoare triple {36#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#true} is VALID [2022-04-15 02:27:54,109 INFO L290 TraceCheckUtils]: 5: Hoare triple {36#true} [96] mainENTRY-->L31: Formula: (and (= v_main_~B~0_1 |v_main_#t~nondet2_2|) (= v_main_~A~0_2 |v_main_#t~nondet1_2|)) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_1, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_#t~nondet2, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {36#true} is VALID [2022-04-15 02:27:54,109 INFO L272 TraceCheckUtils]: 6: Hoare triple {36#true} [98] L31-->assume_abort_if_notENTRY: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {36#true} is VALID [2022-04-15 02:27:54,109 INFO L290 TraceCheckUtils]: 7: Hoare triple {36#true} [100] 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] {36#true} is VALID [2022-04-15 02:27:54,110 INFO L290 TraceCheckUtils]: 8: Hoare triple {36#true} [102] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-15 02:27:54,110 INFO L290 TraceCheckUtils]: 9: Hoare triple {37#false} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-15 02:27:54,110 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {37#false} {36#true} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {37#false} is VALID [2022-04-15 02:27:54,111 INFO L272 TraceCheckUtils]: 11: Hoare triple {37#false} [99] L31-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {36#true} is VALID [2022-04-15 02:27:54,111 INFO L290 TraceCheckUtils]: 12: Hoare triple {36#true} [100] 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] {36#true} is VALID [2022-04-15 02:27:54,112 INFO L290 TraceCheckUtils]: 13: Hoare triple {36#true} [102] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-15 02:27:54,112 INFO L290 TraceCheckUtils]: 14: Hoare triple {37#false} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-15 02:27:54,113 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37#false} {37#false} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {37#false} is VALID [2022-04-15 02:27:54,113 INFO L290 TraceCheckUtils]: 16: Hoare triple {37#false} [101] L32-->L36-3: Formula: (and (= v_main_~A~0_5 v_main_~r~0_4) (= v_main_~B~0_7 v_main_~b~0_6) (= v_main_~q~0_3 0)) InVars {main_~A~0=v_main_~A~0_5, main_~B~0=v_main_~B~0_7} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_7, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_5, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0] {37#false} is VALID [2022-04-15 02:27:54,113 INFO L290 TraceCheckUtils]: 17: Hoare triple {37#false} [104] L36-3-->L45-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-15 02:27:54,113 INFO L290 TraceCheckUtils]: 18: Hoare triple {37#false} [107] L45-2-->L40-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-15 02:27:54,113 INFO L272 TraceCheckUtils]: 19: Hoare triple {37#false} [111] L40-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (mod v_main_~A~0_8 4294967296) (mod (+ v_main_~r~0_11 (* v_main_~q~0_10 v_main_~b~0_14)) 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_10, main_~A~0=v_main_~A~0_8, 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] {37#false} is VALID [2022-04-15 02:27:54,114 INFO L290 TraceCheckUtils]: 20: Hoare triple {37#false} [117] __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] {37#false} is VALID [2022-04-15 02:27:54,114 INFO L290 TraceCheckUtils]: 21: Hoare triple {37#false} [120] 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[] {37#false} is VALID [2022-04-15 02:27:54,114 INFO L290 TraceCheckUtils]: 22: Hoare triple {37#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-15 02:27:54,115 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 02:27:54,115 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 02:27:54,115 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1002735897] [2022-04-15 02:27:54,116 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1002735897] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 02:27:54,116 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 02:27:54,116 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 02:27:54,117 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1066731444] [2022-04-15 02:27:54,117 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 02:27:54,121 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, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-15 02:27:54,122 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 02:27:54,124 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, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 02:27:54,146 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-15 02:27:54,146 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 02:27:54,147 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 02:27:54,166 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 02:27:54,167 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 02:27:54,169 INFO L87 Difference]: Start difference. First operand has 33 states, 21 states have (on average 1.4761904761904763) internal successors, (31), 22 states have internal predecessors, (31), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) 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, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 02:27:54,292 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:27:54,292 INFO L93 Difference]: Finished difference Result 60 states and 84 transitions. [2022-04-15 02:27:54,292 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 02:27:54,292 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, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-15 02:27:54,293 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 02:27:54,293 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, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 02:27:54,305 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 84 transitions. [2022-04-15 02:27:54,306 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, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 02:27:54,313 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 84 transitions. [2022-04-15 02:27:54,313 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 84 transitions. [2022-04-15 02:27:54,439 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 02:27:54,445 INFO L225 Difference]: With dead ends: 60 [2022-04-15 02:27:54,445 INFO L226 Difference]: Without dead ends: 29 [2022-04-15 02:27:54,450 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 02:27:54,453 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 20 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 25 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 20 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 02:27:54,459 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 40 Invalid, 25 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 20 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 02:27:54,469 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-15 02:27:54,483 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 28. [2022-04-15 02:27:54,483 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 02:27:54,484 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 28 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 02:27:54,484 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 28 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 02:27:54,485 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 28 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 02:27:54,488 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:27:54,488 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-15 02:27:54,489 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-15 02:27:54,489 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:27:54,489 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:27:54,489 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 29 states. [2022-04-15 02:27:54,490 INFO L87 Difference]: Start difference. First operand has 28 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 29 states. [2022-04-15 02:27:54,493 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:27:54,493 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-15 02:27:54,493 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-15 02:27:54,493 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:27:54,493 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:27:54,494 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 02:27:54,494 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 02:27:54,494 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 02:27:54,497 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 34 transitions. [2022-04-15 02:27:54,499 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 34 transitions. Word has length 23 [2022-04-15 02:27:54,499 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 02:27:54,499 INFO L478 AbstractCegarLoop]: Abstraction has 28 states and 34 transitions. [2022-04-15 02:27:54,499 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, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 02:27:54,499 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-15 02:27:54,500 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-15 02:27:54,500 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 02:27:54,500 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] [2022-04-15 02:27:54,500 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 02:27:54,500 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 02:27:54,501 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 02:27:54,501 INFO L85 PathProgramCache]: Analyzing trace with hash 106385839, now seen corresponding path program 1 times [2022-04-15 02:27:54,501 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 02:27:54,501 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1281190231] [2022-04-15 02:27:54,501 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:27:54,501 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 02:27:54,515 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 02:27:54,515 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1686452807] [2022-04-15 02:27:54,515 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:27:54,515 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 02:27:54,516 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 02:27:54,517 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 02:27:54,517 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-15 02:27:54,560 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:27:54,561 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-15 02:27:54,569 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:27:54,573 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 02:27:54,787 INFO L272 TraceCheckUtils]: 0: Hoare triple {227#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {227#true} is VALID [2022-04-15 02:27:54,788 INFO L290 TraceCheckUtils]: 1: Hoare triple {227#true} [94] 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) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0) (= v_~counter~0_5 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_5, #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[~counter~0, #NULL.offset, #NULL.base] {235#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:54,789 INFO L290 TraceCheckUtils]: 2: Hoare triple {235#(<= ~counter~0 0)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {235#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:54,789 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {235#(<= ~counter~0 0)} {227#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {235#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:54,790 INFO L272 TraceCheckUtils]: 4: Hoare triple {235#(<= ~counter~0 0)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {235#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:54,790 INFO L290 TraceCheckUtils]: 5: Hoare triple {235#(<= ~counter~0 0)} [96] mainENTRY-->L31: Formula: (and (= v_main_~B~0_1 |v_main_#t~nondet2_2|) (= v_main_~A~0_2 |v_main_#t~nondet1_2|)) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_1, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_#t~nondet2, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {235#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:54,790 INFO L272 TraceCheckUtils]: 6: Hoare triple {235#(<= ~counter~0 0)} [98] L31-->assume_abort_if_notENTRY: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {235#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:54,792 INFO L290 TraceCheckUtils]: 7: Hoare triple {235#(<= ~counter~0 0)} [100] 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] {235#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:54,792 INFO L290 TraceCheckUtils]: 8: Hoare triple {235#(<= ~counter~0 0)} [103] 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[] {235#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:54,793 INFO L290 TraceCheckUtils]: 9: Hoare triple {235#(<= ~counter~0 0)} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {235#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:54,793 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {235#(<= ~counter~0 0)} {235#(<= ~counter~0 0)} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {235#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:54,794 INFO L272 TraceCheckUtils]: 11: Hoare triple {235#(<= ~counter~0 0)} [99] L31-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {235#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:54,794 INFO L290 TraceCheckUtils]: 12: Hoare triple {235#(<= ~counter~0 0)} [100] 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] {235#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:54,795 INFO L290 TraceCheckUtils]: 13: Hoare triple {235#(<= ~counter~0 0)} [103] 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[] {235#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:54,798 INFO L290 TraceCheckUtils]: 14: Hoare triple {235#(<= ~counter~0 0)} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {235#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:54,799 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {235#(<= ~counter~0 0)} {235#(<= ~counter~0 0)} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {235#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:54,801 INFO L290 TraceCheckUtils]: 16: Hoare triple {235#(<= ~counter~0 0)} [101] L32-->L36-3: Formula: (and (= v_main_~A~0_5 v_main_~r~0_4) (= v_main_~B~0_7 v_main_~b~0_6) (= v_main_~q~0_3 0)) InVars {main_~A~0=v_main_~A~0_5, main_~B~0=v_main_~B~0_7} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_7, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_5, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0] {235#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:54,801 INFO L290 TraceCheckUtils]: 17: Hoare triple {235#(<= ~counter~0 0)} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {284#(<= |main_#t~post3| 0)} is VALID [2022-04-15 02:27:54,802 INFO L290 TraceCheckUtils]: 18: Hoare triple {284#(<= |main_#t~post3| 0)} [109] L36-1-->L45-2: Formula: (not (< |v_main_#t~post3_3| 20)) InVars {main_#t~post3=|v_main_#t~post3_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {228#false} is VALID [2022-04-15 02:27:54,802 INFO L290 TraceCheckUtils]: 19: Hoare triple {228#false} [108] L45-2-->L40: Formula: (and (= |v_main_#t~post4_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post4_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, ~counter~0=v_~counter~0_1} AuxVars[] AssignedVars[~counter~0, main_#t~post4] {228#false} is VALID [2022-04-15 02:27:54,802 INFO L290 TraceCheckUtils]: 20: Hoare triple {228#false} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 20)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {228#false} is VALID [2022-04-15 02:27:54,804 INFO L272 TraceCheckUtils]: 21: Hoare triple {228#false} [111] L40-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (mod v_main_~A~0_8 4294967296) (mod (+ v_main_~r~0_11 (* v_main_~q~0_10 v_main_~b~0_14)) 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_10, main_~A~0=v_main_~A~0_8, 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] {228#false} is VALID [2022-04-15 02:27:54,804 INFO L290 TraceCheckUtils]: 22: Hoare triple {228#false} [117] __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] {228#false} is VALID [2022-04-15 02:27:54,804 INFO L290 TraceCheckUtils]: 23: Hoare triple {228#false} [120] 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[] {228#false} is VALID [2022-04-15 02:27:54,805 INFO L290 TraceCheckUtils]: 24: Hoare triple {228#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {228#false} is VALID [2022-04-15 02:27:54,805 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 02:27:54,805 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 02:27:54,805 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 02:27:54,806 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1281190231] [2022-04-15 02:27:54,806 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 02:27:54,807 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1686452807] [2022-04-15 02:27:54,809 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1686452807] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 02:27:54,810 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 02:27:54,810 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 02:27:54,810 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [857133701] [2022-04-15 02:27:54,811 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 02:27:54,812 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 25 [2022-04-15 02:27:54,812 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 02:27:54,812 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 02:27:54,827 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 02:27:54,827 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-15 02:27:54,828 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 02:27:54,828 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-15 02:27:54,828 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 02:27:54,828 INFO L87 Difference]: Start difference. First operand 28 states and 34 transitions. Second operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 02:27:54,876 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:27:54,877 INFO L93 Difference]: Finished difference Result 42 states and 52 transitions. [2022-04-15 02:27:54,877 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-15 02:27:54,877 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 25 [2022-04-15 02:27:54,877 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 02:27:54,877 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 02:27:54,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 52 transitions. [2022-04-15 02:27:54,880 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 02:27:54,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 52 transitions. [2022-04-15 02:27:54,881 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 52 transitions. [2022-04-15 02:27:54,915 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 02:27:54,916 INFO L225 Difference]: With dead ends: 42 [2022-04-15 02:27:54,916 INFO L226 Difference]: Without dead ends: 30 [2022-04-15 02:27:54,917 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 22 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 02:27:54,918 INFO L913 BasicCegarLoop]: 32 mSDtfsCounter, 0 mSDsluCounter, 49 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 81 SdHoareTripleChecker+Invalid, 8 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 02:27:54,918 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 81 Invalid, 8 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 02:27:54,918 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2022-04-15 02:27:54,924 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 30. [2022-04-15 02:27:54,924 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 02:27:54,924 INFO L82 GeneralOperation]: Start isEquivalent. First operand 30 states. Second operand has 30 states, 20 states have (on average 1.3) internal successors, (26), 21 states have internal predecessors, (26), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 02:27:54,925 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand has 30 states, 20 states have (on average 1.3) internal successors, (26), 21 states have internal predecessors, (26), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 02:27:54,925 INFO L87 Difference]: Start difference. First operand 30 states. Second operand has 30 states, 20 states have (on average 1.3) internal successors, (26), 21 states have internal predecessors, (26), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 02:27:54,927 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:27:54,927 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2022-04-15 02:27:54,927 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2022-04-15 02:27:54,927 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:27:54,927 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:27:54,927 INFO L74 IsIncluded]: Start isIncluded. First operand has 30 states, 20 states have (on average 1.3) internal successors, (26), 21 states have internal predecessors, (26), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 30 states. [2022-04-15 02:27:54,928 INFO L87 Difference]: Start difference. First operand has 30 states, 20 states have (on average 1.3) internal successors, (26), 21 states have internal predecessors, (26), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 30 states. [2022-04-15 02:27:54,929 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:27:54,929 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2022-04-15 02:27:54,929 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2022-04-15 02:27:54,929 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:27:54,930 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:27:54,930 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 02:27:54,930 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 02:27:54,930 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 20 states have (on average 1.3) internal successors, (26), 21 states have internal predecessors, (26), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 02:27:54,931 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 36 transitions. [2022-04-15 02:27:54,931 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 36 transitions. Word has length 25 [2022-04-15 02:27:54,931 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 02:27:54,932 INFO L478 AbstractCegarLoop]: Abstraction has 30 states and 36 transitions. [2022-04-15 02:27:54,932 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 02:27:54,932 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2022-04-15 02:27:54,932 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-04-15 02:27:54,932 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 02:27:54,933 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] [2022-04-15 02:27:54,961 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-15 02:27:55,147 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-15 02:27:55,148 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 02:27:55,148 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 02:27:55,148 INFO L85 PathProgramCache]: Analyzing trace with hash 1662084126, now seen corresponding path program 1 times [2022-04-15 02:27:55,148 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 02:27:55,148 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [361675458] [2022-04-15 02:27:55,149 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:27:55,149 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 02:27:55,172 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 02:27:55,172 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [612816244] [2022-04-15 02:27:55,173 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:27:55,173 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 02:27:55,173 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 02:27:55,185 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 02:27:55,190 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-15 02:27:55,261 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:27:55,262 INFO L263 TraceCheckSpWp]: Trace formula consists of 91 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 02:27:55,280 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:27:55,280 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 02:27:55,511 INFO L272 TraceCheckUtils]: 0: Hoare triple {464#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {464#true} is VALID [2022-04-15 02:27:55,512 INFO L290 TraceCheckUtils]: 1: Hoare triple {464#true} [94] 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) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0) (= v_~counter~0_5 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_5, #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[~counter~0, #NULL.offset, #NULL.base] {472#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:55,512 INFO L290 TraceCheckUtils]: 2: Hoare triple {472#(<= ~counter~0 0)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {472#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:55,512 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {472#(<= ~counter~0 0)} {464#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {472#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:55,513 INFO L272 TraceCheckUtils]: 4: Hoare triple {472#(<= ~counter~0 0)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {472#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:55,513 INFO L290 TraceCheckUtils]: 5: Hoare triple {472#(<= ~counter~0 0)} [96] mainENTRY-->L31: Formula: (and (= v_main_~B~0_1 |v_main_#t~nondet2_2|) (= v_main_~A~0_2 |v_main_#t~nondet1_2|)) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_1, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_#t~nondet2, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {472#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:55,514 INFO L272 TraceCheckUtils]: 6: Hoare triple {472#(<= ~counter~0 0)} [98] L31-->assume_abort_if_notENTRY: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {472#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:55,514 INFO L290 TraceCheckUtils]: 7: Hoare triple {472#(<= ~counter~0 0)} [100] 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] {472#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:55,515 INFO L290 TraceCheckUtils]: 8: Hoare triple {472#(<= ~counter~0 0)} [103] 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[] {472#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:55,515 INFO L290 TraceCheckUtils]: 9: Hoare triple {472#(<= ~counter~0 0)} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {472#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:55,516 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {472#(<= ~counter~0 0)} {472#(<= ~counter~0 0)} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {472#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:55,516 INFO L272 TraceCheckUtils]: 11: Hoare triple {472#(<= ~counter~0 0)} [99] L31-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {472#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:55,517 INFO L290 TraceCheckUtils]: 12: Hoare triple {472#(<= ~counter~0 0)} [100] 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] {472#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:55,517 INFO L290 TraceCheckUtils]: 13: Hoare triple {472#(<= ~counter~0 0)} [103] 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[] {472#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:55,517 INFO L290 TraceCheckUtils]: 14: Hoare triple {472#(<= ~counter~0 0)} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {472#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:55,518 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {472#(<= ~counter~0 0)} {472#(<= ~counter~0 0)} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {472#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:55,519 INFO L290 TraceCheckUtils]: 16: Hoare triple {472#(<= ~counter~0 0)} [101] L32-->L36-3: Formula: (and (= v_main_~A~0_5 v_main_~r~0_4) (= v_main_~B~0_7 v_main_~b~0_6) (= v_main_~q~0_3 0)) InVars {main_~A~0=v_main_~A~0_5, main_~B~0=v_main_~B~0_7} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_7, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_5, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0] {472#(<= ~counter~0 0)} is VALID [2022-04-15 02:27:55,519 INFO L290 TraceCheckUtils]: 17: Hoare triple {472#(<= ~counter~0 0)} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {521#(<= ~counter~0 1)} is VALID [2022-04-15 02:27:55,520 INFO L290 TraceCheckUtils]: 18: Hoare triple {521#(<= ~counter~0 1)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {521#(<= ~counter~0 1)} is VALID [2022-04-15 02:27:55,520 INFO L290 TraceCheckUtils]: 19: Hoare triple {521#(<= ~counter~0 1)} [114] L37-->L45-2: Formula: (not (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296))) 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_12, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {521#(<= ~counter~0 1)} is VALID [2022-04-15 02:27:55,521 INFO L290 TraceCheckUtils]: 20: Hoare triple {521#(<= ~counter~0 1)} [108] L45-2-->L40: Formula: (and (= |v_main_#t~post4_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post4_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, ~counter~0=v_~counter~0_1} AuxVars[] AssignedVars[~counter~0, main_#t~post4] {531#(<= |main_#t~post4| 1)} is VALID [2022-04-15 02:27:55,521 INFO L290 TraceCheckUtils]: 21: Hoare triple {531#(<= |main_#t~post4| 1)} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 20)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {465#false} is VALID [2022-04-15 02:27:55,521 INFO L272 TraceCheckUtils]: 22: Hoare triple {465#false} [111] L40-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (mod v_main_~A~0_8 4294967296) (mod (+ v_main_~r~0_11 (* v_main_~q~0_10 v_main_~b~0_14)) 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_10, main_~A~0=v_main_~A~0_8, 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] {465#false} is VALID [2022-04-15 02:27:55,521 INFO L290 TraceCheckUtils]: 23: Hoare triple {465#false} [117] __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] {465#false} is VALID [2022-04-15 02:27:55,521 INFO L290 TraceCheckUtils]: 24: Hoare triple {465#false} [120] 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[] {465#false} is VALID [2022-04-15 02:27:55,522 INFO L290 TraceCheckUtils]: 25: Hoare triple {465#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {465#false} is VALID [2022-04-15 02:27:55,522 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 02:27:55,522 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 02:27:55,524 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 02:27:55,524 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [361675458] [2022-04-15 02:27:55,524 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 02:27:55,524 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [612816244] [2022-04-15 02:27:55,524 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [612816244] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 02:27:55,524 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 02:27:55,524 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 02:27:55,524 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1932583329] [2022-04-15 02:27:55,524 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 02:27:55,525 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 26 [2022-04-15 02:27:55,525 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 02:27:55,525 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 02:27:55,541 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 02:27:55,542 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 02:27:55,542 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 02:27:55,542 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 02:27:55,542 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-15 02:27:55,542 INFO L87 Difference]: Start difference. First operand 30 states and 36 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 02:27:55,626 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:27:55,626 INFO L93 Difference]: Finished difference Result 41 states and 48 transitions. [2022-04-15 02:27:55,626 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 02:27:55,626 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 26 [2022-04-15 02:27:55,627 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 02:27:55,627 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 02:27:55,630 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2022-04-15 02:27:55,630 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 02:27:55,633 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2022-04-15 02:27:55,634 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 48 transitions. [2022-04-15 02:27:55,667 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-15 02:27:55,668 INFO L225 Difference]: With dead ends: 41 [2022-04-15 02:27:55,668 INFO L226 Difference]: Without dead ends: 34 [2022-04-15 02:27:55,669 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 22 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-15 02:27:55,670 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 7 mSDsluCounter, 66 mSDsCounter, 0 mSdLazyCounter, 13 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 97 SdHoareTripleChecker+Invalid, 20 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 13 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 02:27:55,672 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 97 Invalid, 20 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 13 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 02:27:55,673 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-15 02:27:55,680 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2022-04-15 02:27:55,680 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 02:27:55,680 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 33 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 24 states have internal predecessors, (30), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 02:27:55,682 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 33 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 24 states have internal predecessors, (30), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 02:27:55,682 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 33 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 24 states have internal predecessors, (30), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 02:27:55,685 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:27:55,685 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-15 02:27:55,685 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2022-04-15 02:27:55,687 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:27:55,687 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:27:55,687 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 24 states have internal predecessors, (30), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 34 states. [2022-04-15 02:27:55,687 INFO L87 Difference]: Start difference. First operand has 33 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 24 states have internal predecessors, (30), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 34 states. [2022-04-15 02:27:55,689 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:27:55,689 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-15 02:27:55,689 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2022-04-15 02:27:55,689 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:27:55,689 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:27:55,689 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 02:27:55,689 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 02:27:55,690 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 24 states have internal predecessors, (30), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 02:27:55,691 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 40 transitions. [2022-04-15 02:27:55,691 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 40 transitions. Word has length 26 [2022-04-15 02:27:55,691 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 02:27:55,691 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 40 transitions. [2022-04-15 02:27:55,691 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 02:27:55,691 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 40 transitions. [2022-04-15 02:27:55,692 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-04-15 02:27:55,692 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 02:27:55,692 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] [2022-04-15 02:27:55,709 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-15 02:27:55,912 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-15 02:27:55,913 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 02:27:55,913 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 02:27:55,914 INFO L85 PathProgramCache]: Analyzing trace with hash 1663216184, now seen corresponding path program 1 times [2022-04-15 02:27:55,914 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 02:27:55,914 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [18433299] [2022-04-15 02:27:55,914 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:27:55,914 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 02:27:55,927 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 02:27:55,927 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [840860158] [2022-04-15 02:27:55,927 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:27:55,927 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 02:27:55,927 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 02:27:55,944 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 02:27:55,948 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-15 02:27:55,983 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:27:55,983 INFO L263 TraceCheckSpWp]: Trace formula consists of 91 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-15 02:27:55,991 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:27:55,992 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 02:27:57,028 INFO L272 TraceCheckUtils]: 0: Hoare triple {715#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#true} is VALID [2022-04-15 02:27:57,028 INFO L290 TraceCheckUtils]: 1: Hoare triple {715#true} [94] 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) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0) (= v_~counter~0_5 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_5, #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[~counter~0, #NULL.offset, #NULL.base] {715#true} is VALID [2022-04-15 02:27:57,028 INFO L290 TraceCheckUtils]: 2: Hoare triple {715#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#true} is VALID [2022-04-15 02:27:57,029 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {715#true} {715#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#true} is VALID [2022-04-15 02:27:57,029 INFO L272 TraceCheckUtils]: 4: Hoare triple {715#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#true} is VALID [2022-04-15 02:27:57,029 INFO L290 TraceCheckUtils]: 5: Hoare triple {715#true} [96] mainENTRY-->L31: Formula: (and (= v_main_~B~0_1 |v_main_#t~nondet2_2|) (= v_main_~A~0_2 |v_main_#t~nondet1_2|)) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_1, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_#t~nondet2, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {715#true} is VALID [2022-04-15 02:27:57,029 INFO L272 TraceCheckUtils]: 6: Hoare triple {715#true} [98] L31-->assume_abort_if_notENTRY: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {715#true} is VALID [2022-04-15 02:27:57,029 INFO L290 TraceCheckUtils]: 7: Hoare triple {715#true} [100] 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] {741#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 02:27:57,030 INFO L290 TraceCheckUtils]: 8: Hoare triple {741#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [103] 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[] {745#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 02:27:57,030 INFO L290 TraceCheckUtils]: 9: Hoare triple {745#(not (= |assume_abort_if_not_#in~cond| 0))} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {745#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 02:27:57,031 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {745#(not (= |assume_abort_if_not_#in~cond| 0))} {715#true} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {752#(< (mod main_~B~0 4294967296) 2147483647)} is VALID [2022-04-15 02:27:57,031 INFO L272 TraceCheckUtils]: 11: Hoare triple {752#(< (mod main_~B~0 4294967296) 2147483647)} [99] L31-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {715#true} is VALID [2022-04-15 02:27:57,031 INFO L290 TraceCheckUtils]: 12: Hoare triple {715#true} [100] 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] {715#true} is VALID [2022-04-15 02:27:57,031 INFO L290 TraceCheckUtils]: 13: Hoare triple {715#true} [103] 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[] {715#true} is VALID [2022-04-15 02:27:57,031 INFO L290 TraceCheckUtils]: 14: Hoare triple {715#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#true} is VALID [2022-04-15 02:27:57,032 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {715#true} {752#(< (mod main_~B~0 4294967296) 2147483647)} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {752#(< (mod main_~B~0 4294967296) 2147483647)} is VALID [2022-04-15 02:27:57,032 INFO L290 TraceCheckUtils]: 16: Hoare triple {752#(< (mod main_~B~0 4294967296) 2147483647)} [101] L32-->L36-3: Formula: (and (= v_main_~A~0_5 v_main_~r~0_4) (= v_main_~B~0_7 v_main_~b~0_6) (= v_main_~q~0_3 0)) InVars {main_~A~0=v_main_~A~0_5, main_~B~0=v_main_~B~0_7} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_7, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_5, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0] {771#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} is VALID [2022-04-15 02:27:57,033 INFO L290 TraceCheckUtils]: 17: Hoare triple {771#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {771#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} is VALID [2022-04-15 02:27:57,033 INFO L290 TraceCheckUtils]: 18: Hoare triple {771#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {771#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} is VALID [2022-04-15 02:27:57,034 INFO L290 TraceCheckUtils]: 19: Hoare triple {771#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} [114] L37-->L45-2: Formula: (not (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296))) 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_12, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {781#(and (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} is VALID [2022-04-15 02:27:57,034 INFO L290 TraceCheckUtils]: 20: Hoare triple {781#(and (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} [108] L45-2-->L40: Formula: (and (= |v_main_#t~post4_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post4_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, ~counter~0=v_~counter~0_1} AuxVars[] AssignedVars[~counter~0, main_#t~post4] {781#(and (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} is VALID [2022-04-15 02:27:57,035 INFO L290 TraceCheckUtils]: 21: Hoare triple {781#(and (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 20) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {781#(and (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} is VALID [2022-04-15 02:27:57,036 INFO L272 TraceCheckUtils]: 22: Hoare triple {781#(and (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} [118] L41-->__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_7 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_7, 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] {791#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 02:27:57,036 INFO L290 TraceCheckUtils]: 23: Hoare triple {791#(<= 1 |__VERIFIER_assert_#in~cond|)} [117] __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] {795#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 02:27:57,036 INFO L290 TraceCheckUtils]: 24: Hoare triple {795#(<= 1 __VERIFIER_assert_~cond)} [120] 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[] {716#false} is VALID [2022-04-15 02:27:57,037 INFO L290 TraceCheckUtils]: 25: Hoare triple {716#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {716#false} is VALID [2022-04-15 02:27:57,037 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-15 02:27:57,037 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 02:27:57,401 INFO L290 TraceCheckUtils]: 25: Hoare triple {716#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {716#false} is VALID [2022-04-15 02:27:57,401 INFO L290 TraceCheckUtils]: 24: Hoare triple {795#(<= 1 __VERIFIER_assert_~cond)} [120] 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[] {716#false} is VALID [2022-04-15 02:27:57,402 INFO L290 TraceCheckUtils]: 23: Hoare triple {791#(<= 1 |__VERIFIER_assert_#in~cond|)} [117] __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] {795#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 02:27:57,403 INFO L272 TraceCheckUtils]: 22: Hoare triple {811#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [118] L41-->__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_7 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_7, 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] {791#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 02:27:57,404 INFO L290 TraceCheckUtils]: 21: Hoare triple {811#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 20) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {811#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-15 02:27:57,404 INFO L290 TraceCheckUtils]: 20: Hoare triple {811#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [108] L45-2-->L40: Formula: (and (= |v_main_#t~post4_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post4_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, ~counter~0=v_~counter~0_1} AuxVars[] AssignedVars[~counter~0, main_#t~post4] {811#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-15 02:27:57,407 INFO L290 TraceCheckUtils]: 19: Hoare triple {821#(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)))} [114] L37-->L45-2: Formula: (not (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296))) 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_12, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {811#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-15 02:27:57,408 INFO L290 TraceCheckUtils]: 18: Hoare triple {821#(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)))} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {821#(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-15 02:27:57,409 INFO L290 TraceCheckUtils]: 17: Hoare triple {821#(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)))} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {821#(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-15 02:27:57,416 INFO L290 TraceCheckUtils]: 16: Hoare triple {715#true} [101] L32-->L36-3: Formula: (and (= v_main_~A~0_5 v_main_~r~0_4) (= v_main_~B~0_7 v_main_~b~0_6) (= v_main_~q~0_3 0)) InVars {main_~A~0=v_main_~A~0_5, main_~B~0=v_main_~B~0_7} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_7, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_5, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0] {821#(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-15 02:27:57,416 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {715#true} {715#true} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {715#true} is VALID [2022-04-15 02:27:57,416 INFO L290 TraceCheckUtils]: 14: Hoare triple {715#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#true} is VALID [2022-04-15 02:27:57,416 INFO L290 TraceCheckUtils]: 13: Hoare triple {715#true} [103] 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[] {715#true} is VALID [2022-04-15 02:27:57,417 INFO L290 TraceCheckUtils]: 12: Hoare triple {715#true} [100] 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] {715#true} is VALID [2022-04-15 02:27:57,417 INFO L272 TraceCheckUtils]: 11: Hoare triple {715#true} [99] L31-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {715#true} is VALID [2022-04-15 02:27:57,417 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {715#true} {715#true} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {715#true} is VALID [2022-04-15 02:27:57,417 INFO L290 TraceCheckUtils]: 9: Hoare triple {715#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#true} is VALID [2022-04-15 02:27:57,417 INFO L290 TraceCheckUtils]: 8: Hoare triple {715#true} [103] 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[] {715#true} is VALID [2022-04-15 02:27:57,417 INFO L290 TraceCheckUtils]: 7: Hoare triple {715#true} [100] 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] {715#true} is VALID [2022-04-15 02:27:57,417 INFO L272 TraceCheckUtils]: 6: Hoare triple {715#true} [98] L31-->assume_abort_if_notENTRY: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {715#true} is VALID [2022-04-15 02:27:57,417 INFO L290 TraceCheckUtils]: 5: Hoare triple {715#true} [96] mainENTRY-->L31: Formula: (and (= v_main_~B~0_1 |v_main_#t~nondet2_2|) (= v_main_~A~0_2 |v_main_#t~nondet1_2|)) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_1, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_#t~nondet2, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {715#true} is VALID [2022-04-15 02:27:57,418 INFO L272 TraceCheckUtils]: 4: Hoare triple {715#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#true} is VALID [2022-04-15 02:27:57,418 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {715#true} {715#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#true} is VALID [2022-04-15 02:27:57,418 INFO L290 TraceCheckUtils]: 2: Hoare triple {715#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#true} is VALID [2022-04-15 02:27:57,418 INFO L290 TraceCheckUtils]: 1: Hoare triple {715#true} [94] 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) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0) (= v_~counter~0_5 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_5, #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[~counter~0, #NULL.offset, #NULL.base] {715#true} is VALID [2022-04-15 02:27:57,418 INFO L272 TraceCheckUtils]: 0: Hoare triple {715#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#true} is VALID [2022-04-15 02:27:57,418 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 02:27:57,418 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 02:27:57,418 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [18433299] [2022-04-15 02:27:57,419 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 02:27:57,419 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [840860158] [2022-04-15 02:27:57,419 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [840860158] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 02:27:57,419 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 02:27:57,419 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-15 02:27:57,419 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1109153085] [2022-04-15 02:27:57,419 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 02:27:57,420 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 26 [2022-04-15 02:27:57,420 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 02:27:57,420 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 02:27:57,437 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 02:27:57,438 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 02:27:57,438 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 02:27:57,438 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 02:27:57,438 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-15 02:27:57,438 INFO L87 Difference]: Start difference. First operand 33 states and 40 transitions. Second operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 02:28:02,953 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-15 02:28:05,026 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.07s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 02:28:07,099 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.07s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 02:28:09,333 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 02:28:09,335 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:09,335 INFO L93 Difference]: Finished difference Result 42 states and 50 transitions. [2022-04-15 02:28:09,422 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 02:28:09,423 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 26 [2022-04-15 02:28:09,423 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 02:28:09,423 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 02:28:09,425 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 50 transitions. [2022-04-15 02:28:09,425 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 02:28:09,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 50 transitions. [2022-04-15 02:28:09,426 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 50 transitions. [2022-04-15 02:28:09,505 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 02:28:09,506 INFO L225 Difference]: With dead ends: 42 [2022-04-15 02:28:09,506 INFO L226 Difference]: Without dead ends: 39 [2022-04-15 02:28:09,507 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 52 GetRequests, 41 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=29, Invalid=103, Unknown=0, NotChecked=0, Total=132 [2022-04-15 02:28:09,507 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 11 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 2 mSolverCounterUnsat, 4 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 8.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 128 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 4 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 8.3s IncrementalHoareTripleChecker+Time [2022-04-15 02:28:09,507 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 128 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 46 Invalid, 4 Unknown, 0 Unchecked, 8.3s Time] [2022-04-15 02:28:09,508 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2022-04-15 02:28:09,513 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 39. [2022-04-15 02:28:09,513 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 02:28:09,514 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand has 39 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 02:28:09,514 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand has 39 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 02:28:09,514 INFO L87 Difference]: Start difference. First operand 39 states. Second operand has 39 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 02:28:09,515 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:09,515 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-15 02:28:09,515 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-15 02:28:09,516 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:28:09,516 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:28:09,516 INFO L74 IsIncluded]: Start isIncluded. First operand has 39 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 39 states. [2022-04-15 02:28:09,516 INFO L87 Difference]: Start difference. First operand has 39 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 39 states. [2022-04-15 02:28:09,517 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:09,517 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-15 02:28:09,517 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-15 02:28:09,517 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:28:09,518 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:28:09,518 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 02:28:09,518 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 02:28:09,518 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 02:28:09,519 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 46 transitions. [2022-04-15 02:28:09,519 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 46 transitions. Word has length 26 [2022-04-15 02:28:09,519 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 02:28:09,519 INFO L478 AbstractCegarLoop]: Abstraction has 39 states and 46 transitions. [2022-04-15 02:28:09,519 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 02:28:09,519 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-15 02:28:09,520 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 02:28:09,520 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 02:28:09,520 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] [2022-04-15 02:28:09,549 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-15 02:28:09,736 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-15 02:28:09,736 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 02:28:09,737 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 02:28:09,737 INFO L85 PathProgramCache]: Analyzing trace with hash -1664227005, now seen corresponding path program 1 times [2022-04-15 02:28:09,737 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 02:28:09,737 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1974867058] [2022-04-15 02:28:09,737 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:28:09,737 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 02:28:09,751 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 02:28:09,751 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1132132194] [2022-04-15 02:28:09,751 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:28:09,752 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 02:28:09,752 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 02:28:09,773 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 02:28:09,824 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-15 02:28:09,847 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:28:09,848 INFO L263 TraceCheckSpWp]: Trace formula consists of 98 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 02:28:09,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:28:09,858 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 02:28:09,995 INFO L272 TraceCheckUtils]: 0: Hoare triple {1071#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1071#true} is VALID [2022-04-15 02:28:09,996 INFO L290 TraceCheckUtils]: 1: Hoare triple {1071#true} [94] 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) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0) (= v_~counter~0_5 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_5, #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[~counter~0, #NULL.offset, #NULL.base] {1079#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:09,997 INFO L290 TraceCheckUtils]: 2: Hoare triple {1079#(<= ~counter~0 0)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1079#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:09,997 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1079#(<= ~counter~0 0)} {1071#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1079#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:09,997 INFO L272 TraceCheckUtils]: 4: Hoare triple {1079#(<= ~counter~0 0)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1079#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:09,998 INFO L290 TraceCheckUtils]: 5: Hoare triple {1079#(<= ~counter~0 0)} [96] mainENTRY-->L31: Formula: (and (= v_main_~B~0_1 |v_main_#t~nondet2_2|) (= v_main_~A~0_2 |v_main_#t~nondet1_2|)) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_1, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_#t~nondet2, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {1079#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:09,998 INFO L272 TraceCheckUtils]: 6: Hoare triple {1079#(<= ~counter~0 0)} [98] L31-->assume_abort_if_notENTRY: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1079#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:09,999 INFO L290 TraceCheckUtils]: 7: Hoare triple {1079#(<= ~counter~0 0)} [100] 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] {1079#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:09,999 INFO L290 TraceCheckUtils]: 8: Hoare triple {1079#(<= ~counter~0 0)} [103] 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[] {1079#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:09,999 INFO L290 TraceCheckUtils]: 9: Hoare triple {1079#(<= ~counter~0 0)} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1079#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,000 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1079#(<= ~counter~0 0)} {1079#(<= ~counter~0 0)} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1079#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,000 INFO L272 TraceCheckUtils]: 11: Hoare triple {1079#(<= ~counter~0 0)} [99] L31-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1079#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,000 INFO L290 TraceCheckUtils]: 12: Hoare triple {1079#(<= ~counter~0 0)} [100] 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] {1079#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,001 INFO L290 TraceCheckUtils]: 13: Hoare triple {1079#(<= ~counter~0 0)} [103] 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[] {1079#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,001 INFO L290 TraceCheckUtils]: 14: Hoare triple {1079#(<= ~counter~0 0)} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1079#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,002 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1079#(<= ~counter~0 0)} {1079#(<= ~counter~0 0)} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1079#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,002 INFO L290 TraceCheckUtils]: 16: Hoare triple {1079#(<= ~counter~0 0)} [101] L32-->L36-3: Formula: (and (= v_main_~A~0_5 v_main_~r~0_4) (= v_main_~B~0_7 v_main_~b~0_6) (= v_main_~q~0_3 0)) InVars {main_~A~0=v_main_~A~0_5, main_~B~0=v_main_~B~0_7} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_7, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_5, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0] {1079#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,002 INFO L290 TraceCheckUtils]: 17: Hoare triple {1079#(<= ~counter~0 0)} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {1128#(<= ~counter~0 1)} is VALID [2022-04-15 02:28:10,003 INFO L290 TraceCheckUtils]: 18: Hoare triple {1128#(<= ~counter~0 1)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1128#(<= ~counter~0 1)} is VALID [2022-04-15 02:28:10,003 INFO L290 TraceCheckUtils]: 19: Hoare triple {1128#(<= ~counter~0 1)} [115] L37-->L36-3: Formula: (and (<= (mod v_main_~b~0_2 4294967296) (mod v_main_~r~0_1 4294967296)) (= v_main_~b~0_1 (* v_main_~b~0_2 2))) InVars {main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_1} OutVars{main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~b~0] {1128#(<= ~counter~0 1)} is VALID [2022-04-15 02:28:10,004 INFO L290 TraceCheckUtils]: 20: Hoare triple {1128#(<= ~counter~0 1)} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {1138#(<= |main_#t~post3| 1)} is VALID [2022-04-15 02:28:10,004 INFO L290 TraceCheckUtils]: 21: Hoare triple {1138#(<= |main_#t~post3| 1)} [109] L36-1-->L45-2: Formula: (not (< |v_main_#t~post3_3| 20)) InVars {main_#t~post3=|v_main_#t~post3_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1072#false} is VALID [2022-04-15 02:28:10,004 INFO L290 TraceCheckUtils]: 22: Hoare triple {1072#false} [108] L45-2-->L40: Formula: (and (= |v_main_#t~post4_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post4_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, ~counter~0=v_~counter~0_1} AuxVars[] AssignedVars[~counter~0, main_#t~post4] {1072#false} is VALID [2022-04-15 02:28:10,004 INFO L290 TraceCheckUtils]: 23: Hoare triple {1072#false} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 20)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1072#false} is VALID [2022-04-15 02:28:10,004 INFO L272 TraceCheckUtils]: 24: Hoare triple {1072#false} [111] L40-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (mod v_main_~A~0_8 4294967296) (mod (+ v_main_~r~0_11 (* v_main_~q~0_10 v_main_~b~0_14)) 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_10, main_~A~0=v_main_~A~0_8, 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] {1072#false} is VALID [2022-04-15 02:28:10,004 INFO L290 TraceCheckUtils]: 25: Hoare triple {1072#false} [117] __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] {1072#false} is VALID [2022-04-15 02:28:10,005 INFO L290 TraceCheckUtils]: 26: Hoare triple {1072#false} [120] 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[] {1072#false} is VALID [2022-04-15 02:28:10,005 INFO L290 TraceCheckUtils]: 27: Hoare triple {1072#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1072#false} is VALID [2022-04-15 02:28:10,005 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 02:28:10,005 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 02:28:10,185 INFO L290 TraceCheckUtils]: 27: Hoare triple {1072#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1072#false} is VALID [2022-04-15 02:28:10,186 INFO L290 TraceCheckUtils]: 26: Hoare triple {1072#false} [120] 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[] {1072#false} is VALID [2022-04-15 02:28:10,186 INFO L290 TraceCheckUtils]: 25: Hoare triple {1072#false} [117] __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] {1072#false} is VALID [2022-04-15 02:28:10,186 INFO L272 TraceCheckUtils]: 24: Hoare triple {1072#false} [111] L40-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (mod v_main_~A~0_8 4294967296) (mod (+ v_main_~r~0_11 (* v_main_~q~0_10 v_main_~b~0_14)) 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_10, main_~A~0=v_main_~A~0_8, 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] {1072#false} is VALID [2022-04-15 02:28:10,187 INFO L290 TraceCheckUtils]: 23: Hoare triple {1072#false} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 20)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1072#false} is VALID [2022-04-15 02:28:10,187 INFO L290 TraceCheckUtils]: 22: Hoare triple {1072#false} [108] L45-2-->L40: Formula: (and (= |v_main_#t~post4_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post4_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, ~counter~0=v_~counter~0_1} AuxVars[] AssignedVars[~counter~0, main_#t~post4] {1072#false} is VALID [2022-04-15 02:28:10,187 INFO L290 TraceCheckUtils]: 21: Hoare triple {1178#(< |main_#t~post3| 20)} [109] L36-1-->L45-2: Formula: (not (< |v_main_#t~post3_3| 20)) InVars {main_#t~post3=|v_main_#t~post3_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1072#false} is VALID [2022-04-15 02:28:10,188 INFO L290 TraceCheckUtils]: 20: Hoare triple {1182#(< ~counter~0 20)} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {1178#(< |main_#t~post3| 20)} is VALID [2022-04-15 02:28:10,188 INFO L290 TraceCheckUtils]: 19: Hoare triple {1182#(< ~counter~0 20)} [115] L37-->L36-3: Formula: (and (<= (mod v_main_~b~0_2 4294967296) (mod v_main_~r~0_1 4294967296)) (= v_main_~b~0_1 (* v_main_~b~0_2 2))) InVars {main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_1} OutVars{main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~b~0] {1182#(< ~counter~0 20)} is VALID [2022-04-15 02:28:10,188 INFO L290 TraceCheckUtils]: 18: Hoare triple {1182#(< ~counter~0 20)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1182#(< ~counter~0 20)} is VALID [2022-04-15 02:28:10,189 INFO L290 TraceCheckUtils]: 17: Hoare triple {1192#(< ~counter~0 19)} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {1182#(< ~counter~0 20)} is VALID [2022-04-15 02:28:10,189 INFO L290 TraceCheckUtils]: 16: Hoare triple {1192#(< ~counter~0 19)} [101] L32-->L36-3: Formula: (and (= v_main_~A~0_5 v_main_~r~0_4) (= v_main_~B~0_7 v_main_~b~0_6) (= v_main_~q~0_3 0)) InVars {main_~A~0=v_main_~A~0_5, main_~B~0=v_main_~B~0_7} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_7, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_5, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0] {1192#(< ~counter~0 19)} is VALID [2022-04-15 02:28:10,190 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1071#true} {1192#(< ~counter~0 19)} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1192#(< ~counter~0 19)} is VALID [2022-04-15 02:28:10,190 INFO L290 TraceCheckUtils]: 14: Hoare triple {1071#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1071#true} is VALID [2022-04-15 02:28:10,190 INFO L290 TraceCheckUtils]: 13: Hoare triple {1071#true} [103] 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[] {1071#true} is VALID [2022-04-15 02:28:10,191 INFO L290 TraceCheckUtils]: 12: Hoare triple {1071#true} [100] 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] {1071#true} is VALID [2022-04-15 02:28:10,191 INFO L272 TraceCheckUtils]: 11: Hoare triple {1192#(< ~counter~0 19)} [99] L31-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1071#true} is VALID [2022-04-15 02:28:10,191 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1071#true} {1192#(< ~counter~0 19)} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1192#(< ~counter~0 19)} is VALID [2022-04-15 02:28:10,192 INFO L290 TraceCheckUtils]: 9: Hoare triple {1071#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1071#true} is VALID [2022-04-15 02:28:10,192 INFO L290 TraceCheckUtils]: 8: Hoare triple {1071#true} [103] 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[] {1071#true} is VALID [2022-04-15 02:28:10,192 INFO L290 TraceCheckUtils]: 7: Hoare triple {1071#true} [100] 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] {1071#true} is VALID [2022-04-15 02:28:10,192 INFO L272 TraceCheckUtils]: 6: Hoare triple {1192#(< ~counter~0 19)} [98] L31-->assume_abort_if_notENTRY: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1071#true} is VALID [2022-04-15 02:28:10,193 INFO L290 TraceCheckUtils]: 5: Hoare triple {1192#(< ~counter~0 19)} [96] mainENTRY-->L31: Formula: (and (= v_main_~B~0_1 |v_main_#t~nondet2_2|) (= v_main_~A~0_2 |v_main_#t~nondet1_2|)) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_1, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_#t~nondet2, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {1192#(< ~counter~0 19)} is VALID [2022-04-15 02:28:10,193 INFO L272 TraceCheckUtils]: 4: Hoare triple {1192#(< ~counter~0 19)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1192#(< ~counter~0 19)} is VALID [2022-04-15 02:28:10,193 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1192#(< ~counter~0 19)} {1071#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1192#(< ~counter~0 19)} is VALID [2022-04-15 02:28:10,194 INFO L290 TraceCheckUtils]: 2: Hoare triple {1192#(< ~counter~0 19)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1192#(< ~counter~0 19)} is VALID [2022-04-15 02:28:10,194 INFO L290 TraceCheckUtils]: 1: Hoare triple {1071#true} [94] 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) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0) (= v_~counter~0_5 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_5, #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[~counter~0, #NULL.offset, #NULL.base] {1192#(< ~counter~0 19)} is VALID [2022-04-15 02:28:10,194 INFO L272 TraceCheckUtils]: 0: Hoare triple {1071#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1071#true} is VALID [2022-04-15 02:28:10,194 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 02:28:10,195 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 02:28:10,195 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1974867058] [2022-04-15 02:28:10,195 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 02:28:10,195 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1132132194] [2022-04-15 02:28:10,195 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1132132194] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 02:28:10,195 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 02:28:10,195 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-15 02:28:10,195 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [146233586] [2022-04-15 02:28:10,195 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 02:28:10,196 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 8 states have internal predecessors, (29), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 28 [2022-04-15 02:28:10,196 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 02:28:10,196 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.625) internal successors, (29), 8 states have internal predecessors, (29), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 02:28:10,227 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 02:28:10,227 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 02:28:10,227 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 02:28:10,227 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 02:28:10,227 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-15 02:28:10,227 INFO L87 Difference]: Start difference. First operand 39 states and 46 transitions. Second operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 8 states have internal predecessors, (29), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 02:28:10,438 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:10,438 INFO L93 Difference]: Finished difference Result 73 states and 92 transitions. [2022-04-15 02:28:10,438 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 02:28:10,438 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 8 states have internal predecessors, (29), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 28 [2022-04-15 02:28:10,438 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 02:28:10,439 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 8 states have internal predecessors, (29), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 02:28:10,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 92 transitions. [2022-04-15 02:28:10,441 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 8 states have internal predecessors, (29), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 02:28:10,442 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 92 transitions. [2022-04-15 02:28:10,442 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 92 transitions. [2022-04-15 02:28:10,505 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 02:28:10,506 INFO L225 Difference]: With dead ends: 73 [2022-04-15 02:28:10,506 INFO L226 Difference]: Without dead ends: 61 [2022-04-15 02:28:10,507 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 49 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-04-15 02:28:10,507 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 34 mSDsluCounter, 116 mSDsCounter, 0 mSdLazyCounter, 29 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 149 SdHoareTripleChecker+Invalid, 42 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 29 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 02:28:10,507 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [34 Valid, 149 Invalid, 42 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 29 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 02:28:10,508 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states. [2022-04-15 02:28:10,516 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 47. [2022-04-15 02:28:10,517 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 02:28:10,517 INFO L82 GeneralOperation]: Start isEquivalent. First operand 61 states. Second operand has 47 states, 35 states have (on average 1.2571428571428571) internal successors, (44), 36 states have internal predecessors, (44), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 02:28:10,517 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand has 47 states, 35 states have (on average 1.2571428571428571) internal successors, (44), 36 states have internal predecessors, (44), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 02:28:10,517 INFO L87 Difference]: Start difference. First operand 61 states. Second operand has 47 states, 35 states have (on average 1.2571428571428571) internal successors, (44), 36 states have internal predecessors, (44), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 02:28:10,520 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:10,520 INFO L93 Difference]: Finished difference Result 61 states and 74 transitions. [2022-04-15 02:28:10,520 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 74 transitions. [2022-04-15 02:28:10,521 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:28:10,521 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:28:10,522 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 35 states have (on average 1.2571428571428571) internal successors, (44), 36 states have internal predecessors, (44), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 61 states. [2022-04-15 02:28:10,523 INFO L87 Difference]: Start difference. First operand has 47 states, 35 states have (on average 1.2571428571428571) internal successors, (44), 36 states have internal predecessors, (44), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 61 states. [2022-04-15 02:28:10,527 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:10,527 INFO L93 Difference]: Finished difference Result 61 states and 74 transitions. [2022-04-15 02:28:10,527 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 74 transitions. [2022-04-15 02:28:10,529 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:28:10,529 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:28:10,529 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 02:28:10,529 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 02:28:10,529 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 35 states have (on average 1.2571428571428571) internal successors, (44), 36 states have internal predecessors, (44), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 02:28:10,531 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 56 transitions. [2022-04-15 02:28:10,531 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 56 transitions. Word has length 28 [2022-04-15 02:28:10,531 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 02:28:10,531 INFO L478 AbstractCegarLoop]: Abstraction has 47 states and 56 transitions. [2022-04-15 02:28:10,531 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 8 states have internal predecessors, (29), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 02:28:10,531 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 56 transitions. [2022-04-15 02:28:10,531 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-15 02:28:10,531 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 02:28:10,532 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 02:28:10,553 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-04-15 02:28:10,747 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-15 02:28:10,748 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 02:28:10,748 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 02:28:10,748 INFO L85 PathProgramCache]: Analyzing trace with hash -1687306486, now seen corresponding path program 1 times [2022-04-15 02:28:10,748 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 02:28:10,748 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [352813498] [2022-04-15 02:28:10,748 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:28:10,748 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 02:28:10,768 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 02:28:10,768 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [143547904] [2022-04-15 02:28:10,768 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:28:10,768 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 02:28:10,768 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 02:28:10,769 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 02:28:10,770 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-15 02:28:10,811 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:28:10,812 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 02:28:10,820 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:28:10,820 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 02:28:10,974 INFO L272 TraceCheckUtils]: 0: Hoare triple {1534#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1534#true} is VALID [2022-04-15 02:28:10,975 INFO L290 TraceCheckUtils]: 1: Hoare triple {1534#true} [94] 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) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0) (= v_~counter~0_5 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_5, #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[~counter~0, #NULL.offset, #NULL.base] {1542#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,975 INFO L290 TraceCheckUtils]: 2: Hoare triple {1542#(<= ~counter~0 0)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,975 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1542#(<= ~counter~0 0)} {1534#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,976 INFO L272 TraceCheckUtils]: 4: Hoare triple {1542#(<= ~counter~0 0)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,979 INFO L290 TraceCheckUtils]: 5: Hoare triple {1542#(<= ~counter~0 0)} [96] mainENTRY-->L31: Formula: (and (= v_main_~B~0_1 |v_main_#t~nondet2_2|) (= v_main_~A~0_2 |v_main_#t~nondet1_2|)) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_1, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_#t~nondet2, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {1542#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,980 INFO L272 TraceCheckUtils]: 6: Hoare triple {1542#(<= ~counter~0 0)} [98] L31-->assume_abort_if_notENTRY: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1542#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,980 INFO L290 TraceCheckUtils]: 7: Hoare triple {1542#(<= ~counter~0 0)} [100] 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] {1542#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,981 INFO L290 TraceCheckUtils]: 8: Hoare triple {1542#(<= ~counter~0 0)} [103] 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[] {1542#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,981 INFO L290 TraceCheckUtils]: 9: Hoare triple {1542#(<= ~counter~0 0)} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,981 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1542#(<= ~counter~0 0)} {1542#(<= ~counter~0 0)} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1542#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,982 INFO L272 TraceCheckUtils]: 11: Hoare triple {1542#(<= ~counter~0 0)} [99] L31-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1542#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,982 INFO L290 TraceCheckUtils]: 12: Hoare triple {1542#(<= ~counter~0 0)} [100] 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] {1542#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,982 INFO L290 TraceCheckUtils]: 13: Hoare triple {1542#(<= ~counter~0 0)} [103] 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[] {1542#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,983 INFO L290 TraceCheckUtils]: 14: Hoare triple {1542#(<= ~counter~0 0)} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,983 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1542#(<= ~counter~0 0)} {1542#(<= ~counter~0 0)} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1542#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,983 INFO L290 TraceCheckUtils]: 16: Hoare triple {1542#(<= ~counter~0 0)} [101] L32-->L36-3: Formula: (and (= v_main_~A~0_5 v_main_~r~0_4) (= v_main_~B~0_7 v_main_~b~0_6) (= v_main_~q~0_3 0)) InVars {main_~A~0=v_main_~A~0_5, main_~B~0=v_main_~B~0_7} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_7, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_5, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0] {1542#(<= ~counter~0 0)} is VALID [2022-04-15 02:28:10,984 INFO L290 TraceCheckUtils]: 17: Hoare triple {1542#(<= ~counter~0 0)} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {1591#(<= ~counter~0 1)} is VALID [2022-04-15 02:28:10,984 INFO L290 TraceCheckUtils]: 18: Hoare triple {1591#(<= ~counter~0 1)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1591#(<= ~counter~0 1)} is VALID [2022-04-15 02:28:10,985 INFO L290 TraceCheckUtils]: 19: Hoare triple {1591#(<= ~counter~0 1)} [115] L37-->L36-3: Formula: (and (<= (mod v_main_~b~0_2 4294967296) (mod v_main_~r~0_1 4294967296)) (= v_main_~b~0_1 (* v_main_~b~0_2 2))) InVars {main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_1} OutVars{main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~b~0] {1591#(<= ~counter~0 1)} is VALID [2022-04-15 02:28:10,985 INFO L290 TraceCheckUtils]: 20: Hoare triple {1591#(<= ~counter~0 1)} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {1601#(<= ~counter~0 2)} is VALID [2022-04-15 02:28:10,985 INFO L290 TraceCheckUtils]: 21: Hoare triple {1601#(<= ~counter~0 2)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1601#(<= ~counter~0 2)} is VALID [2022-04-15 02:28:10,986 INFO L290 TraceCheckUtils]: 22: Hoare triple {1601#(<= ~counter~0 2)} [114] L37-->L45-2: Formula: (not (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296))) 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_12, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1601#(<= ~counter~0 2)} is VALID [2022-04-15 02:28:10,986 INFO L290 TraceCheckUtils]: 23: Hoare triple {1601#(<= ~counter~0 2)} [108] L45-2-->L40: Formula: (and (= |v_main_#t~post4_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post4_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, ~counter~0=v_~counter~0_1} AuxVars[] AssignedVars[~counter~0, main_#t~post4] {1611#(<= |main_#t~post4| 2)} is VALID [2022-04-15 02:28:10,986 INFO L290 TraceCheckUtils]: 24: Hoare triple {1611#(<= |main_#t~post4| 2)} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 20)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1535#false} is VALID [2022-04-15 02:28:10,986 INFO L272 TraceCheckUtils]: 25: Hoare triple {1535#false} [111] L40-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (mod v_main_~A~0_8 4294967296) (mod (+ v_main_~r~0_11 (* v_main_~q~0_10 v_main_~b~0_14)) 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_10, main_~A~0=v_main_~A~0_8, 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] {1535#false} is VALID [2022-04-15 02:28:10,987 INFO L290 TraceCheckUtils]: 26: Hoare triple {1535#false} [117] __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] {1535#false} is VALID [2022-04-15 02:28:10,987 INFO L290 TraceCheckUtils]: 27: Hoare triple {1535#false} [120] 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[] {1535#false} is VALID [2022-04-15 02:28:10,987 INFO L290 TraceCheckUtils]: 28: Hoare triple {1535#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1535#false} is VALID [2022-04-15 02:28:10,987 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 02:28:10,987 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 02:28:11,162 INFO L290 TraceCheckUtils]: 28: Hoare triple {1535#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1535#false} is VALID [2022-04-15 02:28:11,163 INFO L290 TraceCheckUtils]: 27: Hoare triple {1535#false} [120] 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[] {1535#false} is VALID [2022-04-15 02:28:11,163 INFO L290 TraceCheckUtils]: 26: Hoare triple {1535#false} [117] __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] {1535#false} is VALID [2022-04-15 02:28:11,163 INFO L272 TraceCheckUtils]: 25: Hoare triple {1535#false} [111] L40-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (mod v_main_~A~0_8 4294967296) (mod (+ v_main_~r~0_11 (* v_main_~q~0_10 v_main_~b~0_14)) 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_10, main_~A~0=v_main_~A~0_8, 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] {1535#false} is VALID [2022-04-15 02:28:11,163 INFO L290 TraceCheckUtils]: 24: Hoare triple {1639#(< |main_#t~post4| 20)} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 20)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1535#false} is VALID [2022-04-15 02:28:11,164 INFO L290 TraceCheckUtils]: 23: Hoare triple {1643#(< ~counter~0 20)} [108] L45-2-->L40: Formula: (and (= |v_main_#t~post4_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post4_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, ~counter~0=v_~counter~0_1} AuxVars[] AssignedVars[~counter~0, main_#t~post4] {1639#(< |main_#t~post4| 20)} is VALID [2022-04-15 02:28:11,164 INFO L290 TraceCheckUtils]: 22: Hoare triple {1643#(< ~counter~0 20)} [114] L37-->L45-2: Formula: (not (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296))) 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_12, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1643#(< ~counter~0 20)} is VALID [2022-04-15 02:28:11,165 INFO L290 TraceCheckUtils]: 21: Hoare triple {1643#(< ~counter~0 20)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1643#(< ~counter~0 20)} is VALID [2022-04-15 02:28:11,165 INFO L290 TraceCheckUtils]: 20: Hoare triple {1653#(< ~counter~0 19)} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {1643#(< ~counter~0 20)} is VALID [2022-04-15 02:28:11,165 INFO L290 TraceCheckUtils]: 19: Hoare triple {1653#(< ~counter~0 19)} [115] L37-->L36-3: Formula: (and (<= (mod v_main_~b~0_2 4294967296) (mod v_main_~r~0_1 4294967296)) (= v_main_~b~0_1 (* v_main_~b~0_2 2))) InVars {main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_1} OutVars{main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~b~0] {1653#(< ~counter~0 19)} is VALID [2022-04-15 02:28:11,166 INFO L290 TraceCheckUtils]: 18: Hoare triple {1653#(< ~counter~0 19)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1653#(< ~counter~0 19)} is VALID [2022-04-15 02:28:11,166 INFO L290 TraceCheckUtils]: 17: Hoare triple {1663#(< ~counter~0 18)} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {1653#(< ~counter~0 19)} is VALID [2022-04-15 02:28:11,166 INFO L290 TraceCheckUtils]: 16: Hoare triple {1663#(< ~counter~0 18)} [101] L32-->L36-3: Formula: (and (= v_main_~A~0_5 v_main_~r~0_4) (= v_main_~B~0_7 v_main_~b~0_6) (= v_main_~q~0_3 0)) InVars {main_~A~0=v_main_~A~0_5, main_~B~0=v_main_~B~0_7} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_7, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_5, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0] {1663#(< ~counter~0 18)} is VALID [2022-04-15 02:28:11,167 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1534#true} {1663#(< ~counter~0 18)} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1663#(< ~counter~0 18)} is VALID [2022-04-15 02:28:11,167 INFO L290 TraceCheckUtils]: 14: Hoare triple {1534#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1534#true} is VALID [2022-04-15 02:28:11,167 INFO L290 TraceCheckUtils]: 13: Hoare triple {1534#true} [103] 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[] {1534#true} is VALID [2022-04-15 02:28:11,167 INFO L290 TraceCheckUtils]: 12: Hoare triple {1534#true} [100] 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] {1534#true} is VALID [2022-04-15 02:28:11,167 INFO L272 TraceCheckUtils]: 11: Hoare triple {1663#(< ~counter~0 18)} [99] L31-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1534#true} is VALID [2022-04-15 02:28:11,173 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1534#true} {1663#(< ~counter~0 18)} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1663#(< ~counter~0 18)} is VALID [2022-04-15 02:28:11,173 INFO L290 TraceCheckUtils]: 9: Hoare triple {1534#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1534#true} is VALID [2022-04-15 02:28:11,173 INFO L290 TraceCheckUtils]: 8: Hoare triple {1534#true} [103] 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[] {1534#true} is VALID [2022-04-15 02:28:11,173 INFO L290 TraceCheckUtils]: 7: Hoare triple {1534#true} [100] 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] {1534#true} is VALID [2022-04-15 02:28:11,173 INFO L272 TraceCheckUtils]: 6: Hoare triple {1663#(< ~counter~0 18)} [98] L31-->assume_abort_if_notENTRY: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1534#true} is VALID [2022-04-15 02:28:11,174 INFO L290 TraceCheckUtils]: 5: Hoare triple {1663#(< ~counter~0 18)} [96] mainENTRY-->L31: Formula: (and (= v_main_~B~0_1 |v_main_#t~nondet2_2|) (= v_main_~A~0_2 |v_main_#t~nondet1_2|)) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_1, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_#t~nondet2, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {1663#(< ~counter~0 18)} is VALID [2022-04-15 02:28:11,177 INFO L272 TraceCheckUtils]: 4: Hoare triple {1663#(< ~counter~0 18)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1663#(< ~counter~0 18)} is VALID [2022-04-15 02:28:11,178 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1663#(< ~counter~0 18)} {1534#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1663#(< ~counter~0 18)} is VALID [2022-04-15 02:28:11,179 INFO L290 TraceCheckUtils]: 2: Hoare triple {1663#(< ~counter~0 18)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1663#(< ~counter~0 18)} is VALID [2022-04-15 02:28:11,180 INFO L290 TraceCheckUtils]: 1: Hoare triple {1534#true} [94] 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) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0) (= v_~counter~0_5 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_5, #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[~counter~0, #NULL.offset, #NULL.base] {1663#(< ~counter~0 18)} is VALID [2022-04-15 02:28:11,180 INFO L272 TraceCheckUtils]: 0: Hoare triple {1534#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1534#true} is VALID [2022-04-15 02:28:11,180 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 02:28:11,181 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 02:28:11,181 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [352813498] [2022-04-15 02:28:11,181 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 02:28:11,181 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [143547904] [2022-04-15 02:28:11,181 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [143547904] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 02:28:11,181 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 02:28:11,181 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-15 02:28:11,181 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [808884782] [2022-04-15 02:28:11,181 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 02:28:11,182 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 29 [2022-04-15 02:28:11,182 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 02:28:11,182 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 02:28:11,206 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 02:28:11,206 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-15 02:28:11,206 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 02:28:11,207 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-15 02:28:11,207 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-15 02:28:11,208 INFO L87 Difference]: Start difference. First operand 47 states and 56 transitions. Second operand has 10 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 02:28:11,481 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:11,481 INFO L93 Difference]: Finished difference Result 98 states and 120 transitions. [2022-04-15 02:28:11,481 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-15 02:28:11,482 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 29 [2022-04-15 02:28:11,482 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 02:28:11,482 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 02:28:11,484 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 120 transitions. [2022-04-15 02:28:11,484 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 02:28:11,485 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 120 transitions. [2022-04-15 02:28:11,485 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 120 transitions. [2022-04-15 02:28:11,576 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 120 edges. 120 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 02:28:11,578 INFO L225 Difference]: With dead ends: 98 [2022-04-15 02:28:11,578 INFO L226 Difference]: Without dead ends: 91 [2022-04-15 02:28:11,578 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 61 GetRequests, 49 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=63, Invalid=119, Unknown=0, NotChecked=0, Total=182 [2022-04-15 02:28:11,579 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 89 mSDsluCounter, 146 mSDsCounter, 0 mSdLazyCounter, 45 mSolverCounterSat, 35 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 89 SdHoareTripleChecker+Valid, 181 SdHoareTripleChecker+Invalid, 80 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 35 IncrementalHoareTripleChecker+Valid, 45 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 02:28:11,579 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [89 Valid, 181 Invalid, 80 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 45 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 02:28:11,579 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2022-04-15 02:28:11,599 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 84. [2022-04-15 02:28:11,599 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 02:28:11,600 INFO L82 GeneralOperation]: Start isEquivalent. First operand 91 states. Second operand has 84 states, 63 states have (on average 1.3492063492063493) internal successors, (85), 67 states have internal predecessors, (85), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 02:28:11,600 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand has 84 states, 63 states have (on average 1.3492063492063493) internal successors, (85), 67 states have internal predecessors, (85), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 02:28:11,600 INFO L87 Difference]: Start difference. First operand 91 states. Second operand has 84 states, 63 states have (on average 1.3492063492063493) internal successors, (85), 67 states have internal predecessors, (85), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 02:28:11,602 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:11,602 INFO L93 Difference]: Finished difference Result 91 states and 110 transitions. [2022-04-15 02:28:11,603 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 110 transitions. [2022-04-15 02:28:11,603 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:28:11,603 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:28:11,603 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 63 states have (on average 1.3492063492063493) internal successors, (85), 67 states have internal predecessors, (85), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 91 states. [2022-04-15 02:28:11,603 INFO L87 Difference]: Start difference. First operand has 84 states, 63 states have (on average 1.3492063492063493) internal successors, (85), 67 states have internal predecessors, (85), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 91 states. [2022-04-15 02:28:11,605 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:11,605 INFO L93 Difference]: Finished difference Result 91 states and 110 transitions. [2022-04-15 02:28:11,605 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 110 transitions. [2022-04-15 02:28:11,606 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:28:11,606 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:28:11,606 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 02:28:11,606 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 02:28:11,606 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 63 states have (on average 1.3492063492063493) internal successors, (85), 67 states have internal predecessors, (85), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 02:28:11,608 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 106 transitions. [2022-04-15 02:28:11,608 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 106 transitions. Word has length 29 [2022-04-15 02:28:11,608 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 02:28:11,608 INFO L478 AbstractCegarLoop]: Abstraction has 84 states and 106 transitions. [2022-04-15 02:28:11,608 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-15 02:28:11,608 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 106 transitions. [2022-04-15 02:28:11,609 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-15 02:28:11,609 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 02:28:11,609 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 02:28:11,626 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-04-15 02:28:11,825 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-15 02:28:11,825 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 02:28:11,825 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 02:28:11,825 INFO L85 PathProgramCache]: Analyzing trace with hash -1686174428, now seen corresponding path program 1 times [2022-04-15 02:28:11,825 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 02:28:11,826 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1198955371] [2022-04-15 02:28:11,826 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:28:11,826 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 02:28:11,837 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 02:28:11,837 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [225651372] [2022-04-15 02:28:11,837 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:28:11,837 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 02:28:11,837 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 02:28:11,851 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-15 02:28:11,852 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-15 02:28:11,906 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:28:11,907 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-15 02:28:11,914 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:28:11,915 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 02:28:12,447 INFO L272 TraceCheckUtils]: 0: Hoare triple {2146#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2146#true} is VALID [2022-04-15 02:28:12,447 INFO L290 TraceCheckUtils]: 1: Hoare triple {2146#true} [94] 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) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0) (= v_~counter~0_5 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_5, #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[~counter~0, #NULL.offset, #NULL.base] {2146#true} is VALID [2022-04-15 02:28:12,448 INFO L290 TraceCheckUtils]: 2: Hoare triple {2146#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2146#true} is VALID [2022-04-15 02:28:12,448 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2146#true} {2146#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2146#true} is VALID [2022-04-15 02:28:12,451 INFO L272 TraceCheckUtils]: 4: Hoare triple {2146#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2146#true} is VALID [2022-04-15 02:28:12,451 INFO L290 TraceCheckUtils]: 5: Hoare triple {2146#true} [96] mainENTRY-->L31: Formula: (and (= v_main_~B~0_1 |v_main_#t~nondet2_2|) (= v_main_~A~0_2 |v_main_#t~nondet1_2|)) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_1, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_#t~nondet2, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {2146#true} is VALID [2022-04-15 02:28:12,451 INFO L272 TraceCheckUtils]: 6: Hoare triple {2146#true} [98] L31-->assume_abort_if_notENTRY: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {2146#true} is VALID [2022-04-15 02:28:12,451 INFO L290 TraceCheckUtils]: 7: Hoare triple {2146#true} [100] 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] {2146#true} is VALID [2022-04-15 02:28:12,451 INFO L290 TraceCheckUtils]: 8: Hoare triple {2146#true} [103] 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[] {2146#true} is VALID [2022-04-15 02:28:12,451 INFO L290 TraceCheckUtils]: 9: Hoare triple {2146#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2146#true} is VALID [2022-04-15 02:28:12,451 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2146#true} {2146#true} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {2146#true} is VALID [2022-04-15 02:28:12,451 INFO L272 TraceCheckUtils]: 11: Hoare triple {2146#true} [99] L31-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {2146#true} is VALID [2022-04-15 02:28:12,452 INFO L290 TraceCheckUtils]: 12: Hoare triple {2146#true} [100] 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] {2187#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 02:28:12,452 INFO L290 TraceCheckUtils]: 13: Hoare triple {2187#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [103] 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[] {2191#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 02:28:12,452 INFO L290 TraceCheckUtils]: 14: Hoare triple {2191#(not (= |assume_abort_if_not_#in~cond| 0))} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2191#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 02:28:12,453 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2191#(not (= |assume_abort_if_not_#in~cond| 0))} {2146#true} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {2198#(<= 1 (mod main_~B~0 4294967296))} is VALID [2022-04-15 02:28:12,453 INFO L290 TraceCheckUtils]: 16: Hoare triple {2198#(<= 1 (mod main_~B~0 4294967296))} [101] L32-->L36-3: Formula: (and (= v_main_~A~0_5 v_main_~r~0_4) (= v_main_~B~0_7 v_main_~b~0_6) (= v_main_~q~0_3 0)) InVars {main_~A~0=v_main_~A~0_5, main_~B~0=v_main_~B~0_7} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_7, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_5, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0] {2202#(and (= main_~A~0 main_~r~0) (<= 1 (mod main_~b~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-15 02:28:12,453 INFO L290 TraceCheckUtils]: 17: Hoare triple {2202#(and (= main_~A~0 main_~r~0) (<= 1 (mod main_~b~0 4294967296)) (= main_~q~0 0))} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {2202#(and (= main_~A~0 main_~r~0) (<= 1 (mod main_~b~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-15 02:28:12,454 INFO L290 TraceCheckUtils]: 18: Hoare triple {2202#(and (= main_~A~0 main_~r~0) (<= 1 (mod main_~b~0 4294967296)) (= main_~q~0 0))} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {2202#(and (= main_~A~0 main_~r~0) (<= 1 (mod main_~b~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-15 02:28:12,455 INFO L290 TraceCheckUtils]: 19: Hoare triple {2202#(and (= main_~A~0 main_~r~0) (<= 1 (mod main_~b~0 4294967296)) (= main_~q~0 0))} [115] L37-->L36-3: Formula: (and (<= (mod v_main_~b~0_2 4294967296) (mod v_main_~r~0_1 4294967296)) (= v_main_~b~0_1 (* v_main_~b~0_2 2))) InVars {main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_1} OutVars{main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~b~0] {2212#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} is VALID [2022-04-15 02:28:12,455 INFO L290 TraceCheckUtils]: 20: Hoare triple {2212#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {2212#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} is VALID [2022-04-15 02:28:12,455 INFO L290 TraceCheckUtils]: 21: Hoare triple {2212#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {2212#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} is VALID [2022-04-15 02:28:12,456 INFO L290 TraceCheckUtils]: 22: Hoare triple {2212#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} [114] L37-->L45-2: Formula: (not (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296))) 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_12, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {2212#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} is VALID [2022-04-15 02:28:12,456 INFO L290 TraceCheckUtils]: 23: Hoare triple {2212#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} [108] L45-2-->L40: Formula: (and (= |v_main_#t~post4_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post4_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, ~counter~0=v_~counter~0_1} AuxVars[] AssignedVars[~counter~0, main_#t~post4] {2212#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} is VALID [2022-04-15 02:28:12,456 INFO L290 TraceCheckUtils]: 24: Hoare triple {2212#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 20) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {2212#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} is VALID [2022-04-15 02:28:12,457 INFO L272 TraceCheckUtils]: 25: Hoare triple {2212#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} [118] L41-->__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_7 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_7, 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] {2231#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 02:28:12,457 INFO L290 TraceCheckUtils]: 26: Hoare triple {2231#(<= 1 |__VERIFIER_assert_#in~cond|)} [117] __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] {2235#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 02:28:12,457 INFO L290 TraceCheckUtils]: 27: Hoare triple {2235#(<= 1 __VERIFIER_assert_~cond)} [120] 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[] {2147#false} is VALID [2022-04-15 02:28:12,458 INFO L290 TraceCheckUtils]: 28: Hoare triple {2147#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2147#false} is VALID [2022-04-15 02:28:12,459 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 3 proven. 3 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-15 02:28:12,459 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 02:28:12,982 INFO L290 TraceCheckUtils]: 28: Hoare triple {2147#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2147#false} is VALID [2022-04-15 02:28:12,983 INFO L290 TraceCheckUtils]: 27: Hoare triple {2235#(<= 1 __VERIFIER_assert_~cond)} [120] 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[] {2147#false} is VALID [2022-04-15 02:28:12,987 INFO L290 TraceCheckUtils]: 26: Hoare triple {2231#(<= 1 |__VERIFIER_assert_#in~cond|)} [117] __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] {2235#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 02:28:12,988 INFO L272 TraceCheckUtils]: 25: Hoare triple {2251#(forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)))} [118] L41-->__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_7 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_7, 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] {2231#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 02:28:12,988 INFO L290 TraceCheckUtils]: 24: Hoare triple {2251#(forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)))} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 20) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {2251#(forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)))} is VALID [2022-04-15 02:28:12,989 INFO L290 TraceCheckUtils]: 23: Hoare triple {2251#(forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)))} [108] L45-2-->L40: Formula: (and (= |v_main_#t~post4_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post4_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, ~counter~0=v_~counter~0_1} AuxVars[] AssignedVars[~counter~0, main_#t~post4] {2251#(forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)))} is VALID [2022-04-15 02:28:12,989 INFO L290 TraceCheckUtils]: 22: Hoare triple {2251#(forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)))} [114] L37-->L45-2: Formula: (not (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296))) 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_12, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {2251#(forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)))} is VALID [2022-04-15 02:28:12,990 INFO L290 TraceCheckUtils]: 21: Hoare triple {2251#(forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)))} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {2251#(forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)))} is VALID [2022-04-15 02:28:12,990 INFO L290 TraceCheckUtils]: 20: Hoare triple {2251#(forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)))} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {2251#(forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)))} is VALID [2022-04-15 02:28:12,990 INFO L290 TraceCheckUtils]: 19: Hoare triple {2270#(or (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))))} [115] L37-->L36-3: Formula: (and (<= (mod v_main_~b~0_2 4294967296) (mod v_main_~r~0_1 4294967296)) (= v_main_~b~0_1 (* v_main_~b~0_2 2))) InVars {main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_1} OutVars{main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~b~0] {2251#(forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)))} is VALID [2022-04-15 02:28:12,991 INFO L290 TraceCheckUtils]: 18: Hoare triple {2270#(or (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))))} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {2270#(or (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))))} is VALID [2022-04-15 02:28:12,992 INFO L290 TraceCheckUtils]: 17: Hoare triple {2270#(or (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))))} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {2270#(or (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))))} is VALID [2022-04-15 02:28:12,992 INFO L290 TraceCheckUtils]: 16: Hoare triple {2146#true} [101] L32-->L36-3: Formula: (and (= v_main_~A~0_5 v_main_~r~0_4) (= v_main_~B~0_7 v_main_~b~0_6) (= v_main_~q~0_3 0)) InVars {main_~A~0=v_main_~A~0_5, main_~B~0=v_main_~B~0_7} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_7, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_5, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0] {2270#(or (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))))} is VALID [2022-04-15 02:28:12,992 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2146#true} {2146#true} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {2146#true} is VALID [2022-04-15 02:28:12,992 INFO L290 TraceCheckUtils]: 14: Hoare triple {2146#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2146#true} is VALID [2022-04-15 02:28:12,993 INFO L290 TraceCheckUtils]: 13: Hoare triple {2146#true} [103] 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[] {2146#true} is VALID [2022-04-15 02:28:12,993 INFO L290 TraceCheckUtils]: 12: Hoare triple {2146#true} [100] 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] {2146#true} is VALID [2022-04-15 02:28:12,993 INFO L272 TraceCheckUtils]: 11: Hoare triple {2146#true} [99] L31-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {2146#true} is VALID [2022-04-15 02:28:12,993 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2146#true} {2146#true} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {2146#true} is VALID [2022-04-15 02:28:12,993 INFO L290 TraceCheckUtils]: 9: Hoare triple {2146#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2146#true} is VALID [2022-04-15 02:28:12,993 INFO L290 TraceCheckUtils]: 8: Hoare triple {2146#true} [103] 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[] {2146#true} is VALID [2022-04-15 02:28:12,993 INFO L290 TraceCheckUtils]: 7: Hoare triple {2146#true} [100] 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] {2146#true} is VALID [2022-04-15 02:28:12,993 INFO L272 TraceCheckUtils]: 6: Hoare triple {2146#true} [98] L31-->assume_abort_if_notENTRY: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {2146#true} is VALID [2022-04-15 02:28:12,993 INFO L290 TraceCheckUtils]: 5: Hoare triple {2146#true} [96] mainENTRY-->L31: Formula: (and (= v_main_~B~0_1 |v_main_#t~nondet2_2|) (= v_main_~A~0_2 |v_main_#t~nondet1_2|)) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_1, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_#t~nondet2, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {2146#true} is VALID [2022-04-15 02:28:12,993 INFO L272 TraceCheckUtils]: 4: Hoare triple {2146#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2146#true} is VALID [2022-04-15 02:28:12,993 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2146#true} {2146#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2146#true} is VALID [2022-04-15 02:28:12,994 INFO L290 TraceCheckUtils]: 2: Hoare triple {2146#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2146#true} is VALID [2022-04-15 02:28:12,994 INFO L290 TraceCheckUtils]: 1: Hoare triple {2146#true} [94] 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) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0) (= v_~counter~0_5 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_5, #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[~counter~0, #NULL.offset, #NULL.base] {2146#true} is VALID [2022-04-15 02:28:12,994 INFO L272 TraceCheckUtils]: 0: Hoare triple {2146#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2146#true} is VALID [2022-04-15 02:28:12,994 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 02:28:12,994 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 02:28:12,994 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1198955371] [2022-04-15 02:28:12,994 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 02:28:12,994 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [225651372] [2022-04-15 02:28:12,994 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [225651372] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 02:28:12,994 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 02:28:12,994 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-15 02:28:12,995 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1662266875] [2022-04-15 02:28:12,995 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 02:28:12,995 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 29 [2022-04-15 02:28:12,995 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 02:28:12,995 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 02:28:13,493 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 02:28:13,493 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 02:28:13,493 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 02:28:13,493 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 02:28:13,494 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=86, Unknown=0, NotChecked=0, Total=110 [2022-04-15 02:28:13,494 INFO L87 Difference]: Start difference. First operand 84 states and 106 transitions. Second operand has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 02:28:13,737 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:13,738 INFO L93 Difference]: Finished difference Result 117 states and 143 transitions. [2022-04-15 02:28:13,738 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 02:28:13,738 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 29 [2022-04-15 02:28:13,738 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 02:28:13,738 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 02:28:13,739 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 49 transitions. [2022-04-15 02:28:13,739 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 02:28:13,739 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 49 transitions. [2022-04-15 02:28:13,740 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 49 transitions. [2022-04-15 02:28:15,800 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 48 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 02:28:15,802 INFO L225 Difference]: With dead ends: 117 [2022-04-15 02:28:15,802 INFO L226 Difference]: Without dead ends: 115 [2022-04-15 02:28:15,802 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 47 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=28, Invalid=104, Unknown=0, NotChecked=0, Total=132 [2022-04-15 02:28:15,803 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 9 mSDsluCounter, 113 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 152 SdHoareTripleChecker+Invalid, 34 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 26 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 02:28:15,808 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 152 Invalid, 34 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 26 Unchecked, 0.0s Time] [2022-04-15 02:28:15,808 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 115 states. [2022-04-15 02:28:15,853 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 115 to 114. [2022-04-15 02:28:15,853 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 02:28:15,854 INFO L82 GeneralOperation]: Start isEquivalent. First operand 115 states. Second operand has 114 states, 85 states have (on average 1.2705882352941176) internal successors, (108), 93 states have internal predecessors, (108), 17 states have call successors, (17), 12 states have call predecessors, (17), 11 states have return successors, (12), 8 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-15 02:28:15,855 INFO L74 IsIncluded]: Start isIncluded. First operand 115 states. Second operand has 114 states, 85 states have (on average 1.2705882352941176) internal successors, (108), 93 states have internal predecessors, (108), 17 states have call successors, (17), 12 states have call predecessors, (17), 11 states have return successors, (12), 8 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-15 02:28:15,855 INFO L87 Difference]: Start difference. First operand 115 states. Second operand has 114 states, 85 states have (on average 1.2705882352941176) internal successors, (108), 93 states have internal predecessors, (108), 17 states have call successors, (17), 12 states have call predecessors, (17), 11 states have return successors, (12), 8 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-15 02:28:15,858 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:15,858 INFO L93 Difference]: Finished difference Result 115 states and 138 transitions. [2022-04-15 02:28:15,858 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 138 transitions. [2022-04-15 02:28:15,858 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:28:15,858 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:28:15,858 INFO L74 IsIncluded]: Start isIncluded. First operand has 114 states, 85 states have (on average 1.2705882352941176) internal successors, (108), 93 states have internal predecessors, (108), 17 states have call successors, (17), 12 states have call predecessors, (17), 11 states have return successors, (12), 8 states have call predecessors, (12), 12 states have call successors, (12) Second operand 115 states. [2022-04-15 02:28:15,875 INFO L87 Difference]: Start difference. First operand has 114 states, 85 states have (on average 1.2705882352941176) internal successors, (108), 93 states have internal predecessors, (108), 17 states have call successors, (17), 12 states have call predecessors, (17), 11 states have return successors, (12), 8 states have call predecessors, (12), 12 states have call successors, (12) Second operand 115 states. [2022-04-15 02:28:15,882 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:15,882 INFO L93 Difference]: Finished difference Result 115 states and 138 transitions. [2022-04-15 02:28:15,882 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 138 transitions. [2022-04-15 02:28:15,882 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:28:15,882 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:28:15,882 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 02:28:15,882 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 02:28:15,883 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 114 states, 85 states have (on average 1.2705882352941176) internal successors, (108), 93 states have internal predecessors, (108), 17 states have call successors, (17), 12 states have call predecessors, (17), 11 states have return successors, (12), 8 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-15 02:28:15,885 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 114 states to 114 states and 137 transitions. [2022-04-15 02:28:15,885 INFO L78 Accepts]: Start accepts. Automaton has 114 states and 137 transitions. Word has length 29 [2022-04-15 02:28:15,886 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 02:28:15,886 INFO L478 AbstractCegarLoop]: Abstraction has 114 states and 137 transitions. [2022-04-15 02:28:15,886 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 02:28:15,886 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 137 transitions. [2022-04-15 02:28:15,886 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-15 02:28:15,886 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 02:28:15,886 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 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-15 02:28:15,906 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-15 02:28:16,099 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-15 02:28:16,099 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 02:28:16,100 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 02:28:16,100 INFO L85 PathProgramCache]: Analyzing trace with hash -665062919, now seen corresponding path program 1 times [2022-04-15 02:28:16,100 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 02:28:16,100 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1174584079] [2022-04-15 02:28:16,100 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:28:16,100 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 02:28:16,112 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 02:28:16,112 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [74821644] [2022-04-15 02:28:16,112 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:28:16,112 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 02:28:16,112 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 02:28:16,116 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-15 02:28:16,231 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-15 02:28:16,233 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:28:16,233 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 3 conjunts are in the unsatisfiable core [2022-04-15 02:28:16,244 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:28:16,245 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 02:28:16,311 INFO L272 TraceCheckUtils]: 0: Hoare triple {2864#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2864#true} is VALID [2022-04-15 02:28:16,312 INFO L290 TraceCheckUtils]: 1: Hoare triple {2864#true} [94] 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) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0) (= v_~counter~0_5 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_5, #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[~counter~0, #NULL.offset, #NULL.base] {2864#true} is VALID [2022-04-15 02:28:16,312 INFO L290 TraceCheckUtils]: 2: Hoare triple {2864#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2864#true} is VALID [2022-04-15 02:28:16,312 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2864#true} {2864#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2864#true} is VALID [2022-04-15 02:28:16,312 INFO L272 TraceCheckUtils]: 4: Hoare triple {2864#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2864#true} is VALID [2022-04-15 02:28:16,312 INFO L290 TraceCheckUtils]: 5: Hoare triple {2864#true} [96] mainENTRY-->L31: Formula: (and (= v_main_~B~0_1 |v_main_#t~nondet2_2|) (= v_main_~A~0_2 |v_main_#t~nondet1_2|)) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_1, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_#t~nondet2, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {2864#true} is VALID [2022-04-15 02:28:16,312 INFO L272 TraceCheckUtils]: 6: Hoare triple {2864#true} [98] L31-->assume_abort_if_notENTRY: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {2864#true} is VALID [2022-04-15 02:28:16,312 INFO L290 TraceCheckUtils]: 7: Hoare triple {2864#true} [100] 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] {2864#true} is VALID [2022-04-15 02:28:16,312 INFO L290 TraceCheckUtils]: 8: Hoare triple {2864#true} [103] 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[] {2864#true} is VALID [2022-04-15 02:28:16,312 INFO L290 TraceCheckUtils]: 9: Hoare triple {2864#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2864#true} is VALID [2022-04-15 02:28:16,312 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2864#true} {2864#true} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {2864#true} is VALID [2022-04-15 02:28:16,312 INFO L272 TraceCheckUtils]: 11: Hoare triple {2864#true} [99] L31-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {2864#true} is VALID [2022-04-15 02:28:16,313 INFO L290 TraceCheckUtils]: 12: Hoare triple {2864#true} [100] 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] {2864#true} is VALID [2022-04-15 02:28:16,313 INFO L290 TraceCheckUtils]: 13: Hoare triple {2864#true} [103] 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[] {2864#true} is VALID [2022-04-15 02:28:16,313 INFO L290 TraceCheckUtils]: 14: Hoare triple {2864#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2864#true} is VALID [2022-04-15 02:28:16,313 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2864#true} {2864#true} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {2864#true} is VALID [2022-04-15 02:28:16,314 INFO L290 TraceCheckUtils]: 16: Hoare triple {2864#true} [101] L32-->L36-3: Formula: (and (= v_main_~A~0_5 v_main_~r~0_4) (= v_main_~B~0_7 v_main_~b~0_6) (= v_main_~q~0_3 0)) InVars {main_~A~0=v_main_~A~0_5, main_~B~0=v_main_~B~0_7} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_7, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_5, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0] {2917#(= main_~B~0 main_~b~0)} is VALID [2022-04-15 02:28:16,314 INFO L290 TraceCheckUtils]: 17: Hoare triple {2917#(= main_~B~0 main_~b~0)} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {2917#(= main_~B~0 main_~b~0)} is VALID [2022-04-15 02:28:16,314 INFO L290 TraceCheckUtils]: 18: Hoare triple {2917#(= main_~B~0 main_~b~0)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {2917#(= main_~B~0 main_~b~0)} is VALID [2022-04-15 02:28:16,315 INFO L290 TraceCheckUtils]: 19: Hoare triple {2917#(= main_~B~0 main_~b~0)} [114] L37-->L45-2: Formula: (not (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296))) 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_12, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {2917#(= main_~B~0 main_~b~0)} is VALID [2022-04-15 02:28:16,315 INFO L290 TraceCheckUtils]: 20: Hoare triple {2917#(= main_~B~0 main_~b~0)} [108] L45-2-->L40: Formula: (and (= |v_main_#t~post4_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post4_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, ~counter~0=v_~counter~0_1} AuxVars[] AssignedVars[~counter~0, main_#t~post4] {2917#(= main_~B~0 main_~b~0)} is VALID [2022-04-15 02:28:16,316 INFO L290 TraceCheckUtils]: 21: Hoare triple {2917#(= main_~B~0 main_~b~0)} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 20) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {2917#(= main_~B~0 main_~b~0)} is VALID [2022-04-15 02:28:16,316 INFO L272 TraceCheckUtils]: 22: Hoare triple {2917#(= main_~B~0 main_~b~0)} [118] L41-->__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_7 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_7, 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] {2864#true} is VALID [2022-04-15 02:28:16,316 INFO L290 TraceCheckUtils]: 23: Hoare triple {2864#true} [117] __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] {2864#true} is VALID [2022-04-15 02:28:16,316 INFO L290 TraceCheckUtils]: 24: Hoare triple {2864#true} [121] 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[] {2864#true} is VALID [2022-04-15 02:28:16,316 INFO L290 TraceCheckUtils]: 25: Hoare triple {2864#true} [126] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2864#true} is VALID [2022-04-15 02:28:16,316 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2864#true} {2917#(= main_~B~0 main_~b~0)} [133] __VERIFIER_assertEXIT-->L41-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_7 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_7, 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] {2917#(= main_~B~0 main_~b~0)} is VALID [2022-04-15 02:28:16,317 INFO L290 TraceCheckUtils]: 27: Hoare triple {2917#(= main_~B~0 main_~b~0)} [123] L41-1-->L45: Formula: (let ((.cse0 (mod v_main_~b~0_8 4294967296))) (and (= v_main_~q~0_4 (* v_main_~q~0_5 2)) (= v_main_~b~0_7 (div .cse0 2)) (not (= .cse0 (mod v_main_~B~0_8 4294967296))))) InVars {main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_8, main_~b~0=v_main_~b~0_8} OutVars{main_~q~0=v_main_~q~0_4, main_~B~0=v_main_~B~0_8, main_~b~0=v_main_~b~0_7} AuxVars[] AssignedVars[main_~q~0, main_~b~0] {2865#false} is VALID [2022-04-15 02:28:16,317 INFO L290 TraceCheckUtils]: 28: Hoare triple {2865#false} [128] L45-->L45-2: Formula: (not (<= (mod v_main_~b~0_10 4294967296) (mod v_main_~r~0_7 4294967296))) InVars {main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_7} OutVars{main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_7} AuxVars[] AssignedVars[] {2865#false} is VALID [2022-04-15 02:28:16,317 INFO L290 TraceCheckUtils]: 29: Hoare triple {2865#false} [108] L45-2-->L40: Formula: (and (= |v_main_#t~post4_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post4_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, ~counter~0=v_~counter~0_1} AuxVars[] AssignedVars[~counter~0, main_#t~post4] {2865#false} is VALID [2022-04-15 02:28:16,317 INFO L290 TraceCheckUtils]: 30: Hoare triple {2865#false} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 20) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {2865#false} is VALID [2022-04-15 02:28:16,317 INFO L272 TraceCheckUtils]: 31: Hoare triple {2865#false} [118] L41-->__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_7 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_7, 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] {2865#false} is VALID [2022-04-15 02:28:16,317 INFO L290 TraceCheckUtils]: 32: Hoare triple {2865#false} [117] __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] {2865#false} is VALID [2022-04-15 02:28:16,319 INFO L290 TraceCheckUtils]: 33: Hoare triple {2865#false} [120] 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[] {2865#false} is VALID [2022-04-15 02:28:16,319 INFO L290 TraceCheckUtils]: 34: Hoare triple {2865#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2865#false} is VALID [2022-04-15 02:28:16,319 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 5 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 02:28:16,320 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 02:28:16,320 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 02:28:16,320 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1174584079] [2022-04-15 02:28:16,320 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 02:28:16,320 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [74821644] [2022-04-15 02:28:16,320 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [74821644] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 02:28:16,321 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 02:28:16,321 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 02:28:16,321 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1231041503] [2022-04-15 02:28:16,321 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 02:28:16,322 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 7.333333333333333) internal successors, (22), 3 states have internal predecessors, (22), 3 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 35 [2022-04-15 02:28:16,322 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 02:28:16,322 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 7.333333333333333) internal successors, (22), 3 states have internal predecessors, (22), 3 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 02:28:16,346 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 02:28:16,346 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 02:28:16,346 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 02:28:16,346 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 02:28:16,347 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 02:28:16,347 INFO L87 Difference]: Start difference. First operand 114 states and 137 transitions. Second operand has 3 states, 3 states have (on average 7.333333333333333) internal successors, (22), 3 states have internal predecessors, (22), 3 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 02:28:16,422 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:16,422 INFO L93 Difference]: Finished difference Result 155 states and 189 transitions. [2022-04-15 02:28:16,422 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 02:28:16,422 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 7.333333333333333) internal successors, (22), 3 states have internal predecessors, (22), 3 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 35 [2022-04-15 02:28:16,422 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 02:28:16,422 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 7.333333333333333) internal successors, (22), 3 states have internal predecessors, (22), 3 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 02:28:16,423 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 58 transitions. [2022-04-15 02:28:16,423 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 7.333333333333333) internal successors, (22), 3 states have internal predecessors, (22), 3 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 02:28:16,424 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 58 transitions. [2022-04-15 02:28:16,424 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 58 transitions. [2022-04-15 02:28:16,462 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 02:28:16,463 INFO L225 Difference]: With dead ends: 155 [2022-04-15 02:28:16,463 INFO L226 Difference]: Without dead ends: 100 [2022-04-15 02:28:16,464 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 33 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 02:28:16,464 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 0 mSDsluCounter, 22 mSDsCounter, 0 mSdLazyCounter, 13 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 55 SdHoareTripleChecker+Invalid, 13 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 13 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 02:28:16,464 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 55 Invalid, 13 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 13 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 02:28:16,465 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2022-04-15 02:28:16,497 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 100. [2022-04-15 02:28:16,497 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 02:28:16,497 INFO L82 GeneralOperation]: Start isEquivalent. First operand 100 states. Second operand has 100 states, 75 states have (on average 1.2666666666666666) internal successors, (95), 81 states have internal predecessors, (95), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 02:28:16,497 INFO L74 IsIncluded]: Start isIncluded. First operand 100 states. Second operand has 100 states, 75 states have (on average 1.2666666666666666) internal successors, (95), 81 states have internal predecessors, (95), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 02:28:16,498 INFO L87 Difference]: Start difference. First operand 100 states. Second operand has 100 states, 75 states have (on average 1.2666666666666666) internal successors, (95), 81 states have internal predecessors, (95), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 02:28:16,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:16,500 INFO L93 Difference]: Finished difference Result 100 states and 120 transitions. [2022-04-15 02:28:16,500 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 120 transitions. [2022-04-15 02:28:16,500 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:28:16,500 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:28:16,500 INFO L74 IsIncluded]: Start isIncluded. First operand has 100 states, 75 states have (on average 1.2666666666666666) internal successors, (95), 81 states have internal predecessors, (95), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) Second operand 100 states. [2022-04-15 02:28:16,500 INFO L87 Difference]: Start difference. First operand has 100 states, 75 states have (on average 1.2666666666666666) internal successors, (95), 81 states have internal predecessors, (95), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) Second operand 100 states. [2022-04-15 02:28:16,502 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:16,502 INFO L93 Difference]: Finished difference Result 100 states and 120 transitions. [2022-04-15 02:28:16,502 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 120 transitions. [2022-04-15 02:28:16,502 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:28:16,503 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:28:16,503 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 02:28:16,503 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 02:28:16,503 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 100 states, 75 states have (on average 1.2666666666666666) internal successors, (95), 81 states have internal predecessors, (95), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 02:28:16,505 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 100 states to 100 states and 120 transitions. [2022-04-15 02:28:16,505 INFO L78 Accepts]: Start accepts. Automaton has 100 states and 120 transitions. Word has length 35 [2022-04-15 02:28:16,505 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 02:28:16,505 INFO L478 AbstractCegarLoop]: Abstraction has 100 states and 120 transitions. [2022-04-15 02:28:16,505 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 7.333333333333333) internal successors, (22), 3 states have internal predecessors, (22), 3 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 02:28:16,505 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 120 transitions. [2022-04-15 02:28:16,505 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-15 02:28:16,505 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 02:28:16,506 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 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, 1, 1] [2022-04-15 02:28:16,524 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-15 02:28:16,721 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 02:28:16,722 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 02:28:16,722 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 02:28:16,722 INFO L85 PathProgramCache]: Analyzing trace with hash 1800746756, now seen corresponding path program 1 times [2022-04-15 02:28:16,722 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 02:28:16,722 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [858600538] [2022-04-15 02:28:16,722 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:28:16,722 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 02:28:16,733 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 02:28:16,734 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [779629701] [2022-04-15 02:28:16,734 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:28:16,734 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 02:28:16,734 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 02:28:16,735 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 02:28:16,735 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-15 02:28:16,769 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:28:16,769 INFO L263 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-15 02:28:16,775 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 02:28:16,775 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 02:28:17,031 INFO L272 TraceCheckUtils]: 0: Hoare triple {3504#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3504#true} is VALID [2022-04-15 02:28:17,031 INFO L290 TraceCheckUtils]: 1: Hoare triple {3504#true} [94] 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) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0) (= v_~counter~0_5 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_5, #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[~counter~0, #NULL.offset, #NULL.base] {3504#true} is VALID [2022-04-15 02:28:17,031 INFO L290 TraceCheckUtils]: 2: Hoare triple {3504#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3504#true} is VALID [2022-04-15 02:28:17,032 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3504#true} {3504#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3504#true} is VALID [2022-04-15 02:28:17,032 INFO L272 TraceCheckUtils]: 4: Hoare triple {3504#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3504#true} is VALID [2022-04-15 02:28:17,032 INFO L290 TraceCheckUtils]: 5: Hoare triple {3504#true} [96] mainENTRY-->L31: Formula: (and (= v_main_~B~0_1 |v_main_#t~nondet2_2|) (= v_main_~A~0_2 |v_main_#t~nondet1_2|)) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_1, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_#t~nondet2, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {3504#true} is VALID [2022-04-15 02:28:17,032 INFO L272 TraceCheckUtils]: 6: Hoare triple {3504#true} [98] L31-->assume_abort_if_notENTRY: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {3504#true} is VALID [2022-04-15 02:28:17,032 INFO L290 TraceCheckUtils]: 7: Hoare triple {3504#true} [100] 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] {3504#true} is VALID [2022-04-15 02:28:17,032 INFO L290 TraceCheckUtils]: 8: Hoare triple {3504#true} [103] 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[] {3504#true} is VALID [2022-04-15 02:28:17,032 INFO L290 TraceCheckUtils]: 9: Hoare triple {3504#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3504#true} is VALID [2022-04-15 02:28:17,032 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3504#true} {3504#true} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {3504#true} is VALID [2022-04-15 02:28:17,032 INFO L272 TraceCheckUtils]: 11: Hoare triple {3504#true} [99] L31-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {3504#true} is VALID [2022-04-15 02:28:17,032 INFO L290 TraceCheckUtils]: 12: Hoare triple {3504#true} [100] 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] {3504#true} is VALID [2022-04-15 02:28:17,032 INFO L290 TraceCheckUtils]: 13: Hoare triple {3504#true} [103] 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[] {3504#true} is VALID [2022-04-15 02:28:17,032 INFO L290 TraceCheckUtils]: 14: Hoare triple {3504#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3504#true} is VALID [2022-04-15 02:28:17,033 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3504#true} {3504#true} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {3504#true} is VALID [2022-04-15 02:28:17,033 INFO L290 TraceCheckUtils]: 16: Hoare triple {3504#true} [101] L32-->L36-3: Formula: (and (= v_main_~A~0_5 v_main_~r~0_4) (= v_main_~B~0_7 v_main_~b~0_6) (= v_main_~q~0_3 0)) InVars {main_~A~0=v_main_~A~0_5, main_~B~0=v_main_~B~0_7} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_7, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_5, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0] {3504#true} is VALID [2022-04-15 02:28:17,033 INFO L290 TraceCheckUtils]: 17: Hoare triple {3504#true} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {3504#true} is VALID [2022-04-15 02:28:17,033 INFO L290 TraceCheckUtils]: 18: Hoare triple {3504#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3504#true} is VALID [2022-04-15 02:28:17,033 INFO L290 TraceCheckUtils]: 19: Hoare triple {3504#true} [115] L37-->L36-3: Formula: (and (<= (mod v_main_~b~0_2 4294967296) (mod v_main_~r~0_1 4294967296)) (= v_main_~b~0_1 (* v_main_~b~0_2 2))) InVars {main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_1} OutVars{main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~b~0] {3504#true} is VALID [2022-04-15 02:28:17,033 INFO L290 TraceCheckUtils]: 20: Hoare triple {3504#true} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {3504#true} is VALID [2022-04-15 02:28:17,033 INFO L290 TraceCheckUtils]: 21: Hoare triple {3504#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3504#true} is VALID [2022-04-15 02:28:17,033 INFO L290 TraceCheckUtils]: 22: Hoare triple {3504#true} [114] L37-->L45-2: Formula: (not (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296))) 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_12, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {3504#true} is VALID [2022-04-15 02:28:17,033 INFO L290 TraceCheckUtils]: 23: Hoare triple {3504#true} [108] L45-2-->L40: Formula: (and (= |v_main_#t~post4_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post4_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, ~counter~0=v_~counter~0_1} AuxVars[] AssignedVars[~counter~0, main_#t~post4] {3504#true} is VALID [2022-04-15 02:28:17,033 INFO L290 TraceCheckUtils]: 24: Hoare triple {3504#true} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 20) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {3504#true} is VALID [2022-04-15 02:28:17,033 INFO L272 TraceCheckUtils]: 25: Hoare triple {3504#true} [118] L41-->__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_7 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_7, 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] {3504#true} is VALID [2022-04-15 02:28:17,034 INFO L290 TraceCheckUtils]: 26: Hoare triple {3504#true} [117] __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] {3587#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 02:28:17,034 INFO L290 TraceCheckUtils]: 27: Hoare triple {3587#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [121] 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[] {3591#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 02:28:17,034 INFO L290 TraceCheckUtils]: 28: Hoare triple {3591#(not (= |__VERIFIER_assert_#in~cond| 0))} [126] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3591#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 02:28:17,035 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3591#(not (= |__VERIFIER_assert_#in~cond| 0))} {3504#true} [133] __VERIFIER_assertEXIT-->L41-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_7 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_7, 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] {3598#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-15 02:28:17,037 INFO L290 TraceCheckUtils]: 30: Hoare triple {3598#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [122] L41-1-->L40-2: Formula: (= (mod v_main_~b~0_5 4294967296) (mod v_main_~B~0_6 4294967296)) InVars {main_~b~0=v_main_~b~0_5, main_~B~0=v_main_~B~0_6} OutVars{main_~b~0=v_main_~b~0_5, main_~B~0=v_main_~B~0_6} AuxVars[] AssignedVars[] {3598#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-15 02:28:17,038 INFO L272 TraceCheckUtils]: 31: Hoare triple {3598#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [111] L40-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (mod v_main_~A~0_8 4294967296) (mod (+ v_main_~r~0_11 (* v_main_~q~0_10 v_main_~b~0_14)) 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_10, main_~A~0=v_main_~A~0_8, 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] {3605#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2022-04-15 02:28:17,039 INFO L290 TraceCheckUtils]: 32: Hoare triple {3605#(= |__VERIFIER_assert_#in~cond| 1)} [117] __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] {3609#(= __VERIFIER_assert_~cond 1)} is VALID [2022-04-15 02:28:17,044 INFO L290 TraceCheckUtils]: 33: Hoare triple {3609#(= __VERIFIER_assert_~cond 1)} [120] 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[] {3505#false} is VALID [2022-04-15 02:28:17,044 INFO L290 TraceCheckUtils]: 34: Hoare triple {3505#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3505#false} is VALID [2022-04-15 02:28:17,044 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-04-15 02:28:17,045 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 02:28:18,165 INFO L290 TraceCheckUtils]: 34: Hoare triple {3505#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3505#false} is VALID [2022-04-15 02:28:18,165 INFO L290 TraceCheckUtils]: 33: Hoare triple {3619#(not (= __VERIFIER_assert_~cond 0))} [120] 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[] {3505#false} is VALID [2022-04-15 02:28:18,166 INFO L290 TraceCheckUtils]: 32: Hoare triple {3591#(not (= |__VERIFIER_assert_#in~cond| 0))} [117] __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] {3619#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 02:28:18,166 INFO L272 TraceCheckUtils]: 31: Hoare triple {3598#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [111] L40-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (mod v_main_~A~0_8 4294967296) (mod (+ v_main_~r~0_11 (* v_main_~q~0_10 v_main_~b~0_14)) 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_10, main_~A~0=v_main_~A~0_8, 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] {3591#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 02:28:18,167 INFO L290 TraceCheckUtils]: 30: Hoare triple {3598#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [122] L41-1-->L40-2: Formula: (= (mod v_main_~b~0_5 4294967296) (mod v_main_~B~0_6 4294967296)) InVars {main_~b~0=v_main_~b~0_5, main_~B~0=v_main_~B~0_6} OutVars{main_~b~0=v_main_~b~0_5, main_~B~0=v_main_~B~0_6} AuxVars[] AssignedVars[] {3598#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-15 02:28:18,167 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3591#(not (= |__VERIFIER_assert_#in~cond| 0))} {3504#true} [133] __VERIFIER_assertEXIT-->L41-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_7 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_7, 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] {3598#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-15 02:28:18,168 INFO L290 TraceCheckUtils]: 28: Hoare triple {3591#(not (= |__VERIFIER_assert_#in~cond| 0))} [126] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3591#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 02:28:18,168 INFO L290 TraceCheckUtils]: 27: Hoare triple {3641#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [121] 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[] {3591#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 02:28:18,169 INFO L290 TraceCheckUtils]: 26: Hoare triple {3504#true} [117] __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] {3641#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 02:28:18,169 INFO L272 TraceCheckUtils]: 25: Hoare triple {3504#true} [118] L41-->__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_7 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_7, 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] {3504#true} is VALID [2022-04-15 02:28:18,169 INFO L290 TraceCheckUtils]: 24: Hoare triple {3504#true} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 20) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {3504#true} is VALID [2022-04-15 02:28:18,169 INFO L290 TraceCheckUtils]: 23: Hoare triple {3504#true} [108] L45-2-->L40: Formula: (and (= |v_main_#t~post4_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post4_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, ~counter~0=v_~counter~0_1} AuxVars[] AssignedVars[~counter~0, main_#t~post4] {3504#true} is VALID [2022-04-15 02:28:18,169 INFO L290 TraceCheckUtils]: 22: Hoare triple {3504#true} [114] L37-->L45-2: Formula: (not (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296))) 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_12, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {3504#true} is VALID [2022-04-15 02:28:18,169 INFO L290 TraceCheckUtils]: 21: Hoare triple {3504#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3504#true} is VALID [2022-04-15 02:28:18,169 INFO L290 TraceCheckUtils]: 20: Hoare triple {3504#true} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {3504#true} is VALID [2022-04-15 02:28:18,169 INFO L290 TraceCheckUtils]: 19: Hoare triple {3504#true} [115] L37-->L36-3: Formula: (and (<= (mod v_main_~b~0_2 4294967296) (mod v_main_~r~0_1 4294967296)) (= v_main_~b~0_1 (* v_main_~b~0_2 2))) InVars {main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_1} OutVars{main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~b~0] {3504#true} is VALID [2022-04-15 02:28:18,169 INFO L290 TraceCheckUtils]: 18: Hoare triple {3504#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3504#true} is VALID [2022-04-15 02:28:18,169 INFO L290 TraceCheckUtils]: 17: Hoare triple {3504#true} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {3504#true} is VALID [2022-04-15 02:28:18,170 INFO L290 TraceCheckUtils]: 16: Hoare triple {3504#true} [101] L32-->L36-3: Formula: (and (= v_main_~A~0_5 v_main_~r~0_4) (= v_main_~B~0_7 v_main_~b~0_6) (= v_main_~q~0_3 0)) InVars {main_~A~0=v_main_~A~0_5, main_~B~0=v_main_~B~0_7} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_7, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_5, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0] {3504#true} is VALID [2022-04-15 02:28:18,170 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3504#true} {3504#true} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {3504#true} is VALID [2022-04-15 02:28:18,170 INFO L290 TraceCheckUtils]: 14: Hoare triple {3504#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3504#true} is VALID [2022-04-15 02:28:18,170 INFO L290 TraceCheckUtils]: 13: Hoare triple {3504#true} [103] 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[] {3504#true} is VALID [2022-04-15 02:28:18,170 INFO L290 TraceCheckUtils]: 12: Hoare triple {3504#true} [100] 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] {3504#true} is VALID [2022-04-15 02:28:18,170 INFO L272 TraceCheckUtils]: 11: Hoare triple {3504#true} [99] L31-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {3504#true} is VALID [2022-04-15 02:28:18,170 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3504#true} {3504#true} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {3504#true} is VALID [2022-04-15 02:28:18,170 INFO L290 TraceCheckUtils]: 9: Hoare triple {3504#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3504#true} is VALID [2022-04-15 02:28:18,170 INFO L290 TraceCheckUtils]: 8: Hoare triple {3504#true} [103] 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[] {3504#true} is VALID [2022-04-15 02:28:18,170 INFO L290 TraceCheckUtils]: 7: Hoare triple {3504#true} [100] 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] {3504#true} is VALID [2022-04-15 02:28:18,170 INFO L272 TraceCheckUtils]: 6: Hoare triple {3504#true} [98] L31-->assume_abort_if_notENTRY: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {3504#true} is VALID [2022-04-15 02:28:18,171 INFO L290 TraceCheckUtils]: 5: Hoare triple {3504#true} [96] mainENTRY-->L31: Formula: (and (= v_main_~B~0_1 |v_main_#t~nondet2_2|) (= v_main_~A~0_2 |v_main_#t~nondet1_2|)) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_1, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_#t~nondet2, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {3504#true} is VALID [2022-04-15 02:28:18,171 INFO L272 TraceCheckUtils]: 4: Hoare triple {3504#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3504#true} is VALID [2022-04-15 02:28:18,171 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3504#true} {3504#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3504#true} is VALID [2022-04-15 02:28:18,171 INFO L290 TraceCheckUtils]: 2: Hoare triple {3504#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3504#true} is VALID [2022-04-15 02:28:18,171 INFO L290 TraceCheckUtils]: 1: Hoare triple {3504#true} [94] 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) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0) (= v_~counter~0_5 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_5, #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[~counter~0, #NULL.offset, #NULL.base] {3504#true} is VALID [2022-04-15 02:28:18,171 INFO L272 TraceCheckUtils]: 0: Hoare triple {3504#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3504#true} is VALID [2022-04-15 02:28:18,172 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-04-15 02:28:18,172 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 02:28:18,172 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [858600538] [2022-04-15 02:28:18,172 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 02:28:18,172 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [779629701] [2022-04-15 02:28:18,172 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [779629701] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 02:28:18,172 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 02:28:18,172 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6] total 9 [2022-04-15 02:28:18,174 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [750487026] [2022-04-15 02:28:18,174 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 02:28:18,175 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 35 [2022-04-15 02:28:18,175 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 02:28:18,175 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-15 02:28:18,201 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 02:28:18,202 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 02:28:18,202 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 02:28:18,202 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 02:28:18,202 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-04-15 02:28:18,202 INFO L87 Difference]: Start difference. First operand 100 states and 120 transitions. Second operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-15 02:28:20,565 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 02:28:20,907 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:20,908 INFO L93 Difference]: Finished difference Result 115 states and 134 transitions. [2022-04-15 02:28:20,908 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-15 02:28:20,908 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 35 [2022-04-15 02:28:20,908 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 02:28:20,908 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-15 02:28:20,909 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 43 transitions. [2022-04-15 02:28:20,909 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-15 02:28:20,910 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 43 transitions. [2022-04-15 02:28:20,910 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 43 transitions. [2022-04-15 02:28:20,961 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 02:28:20,962 INFO L225 Difference]: With dead ends: 115 [2022-04-15 02:28:20,962 INFO L226 Difference]: Without dead ends: 95 [2022-04-15 02:28:20,963 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 71 GetRequests, 62 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=35, Invalid=75, Unknown=0, NotChecked=0, Total=110 [2022-04-15 02:28:20,963 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 17 mSDsluCounter, 121 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 3 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 150 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.5s IncrementalHoareTripleChecker+Time [2022-04-15 02:28:20,963 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 150 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 50 Invalid, 1 Unknown, 0 Unchecked, 2.5s Time] [2022-04-15 02:28:20,964 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states. [2022-04-15 02:28:21,004 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 95. [2022-04-15 02:28:21,005 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 02:28:21,007 INFO L82 GeneralOperation]: Start isEquivalent. First operand 95 states. Second operand has 95 states, 73 states have (on average 1.2191780821917808) internal successors, (89), 77 states have internal predecessors, (89), 12 states have call successors, (12), 10 states have call predecessors, (12), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 02:28:21,009 INFO L74 IsIncluded]: Start isIncluded. First operand 95 states. Second operand has 95 states, 73 states have (on average 1.2191780821917808) internal successors, (89), 77 states have internal predecessors, (89), 12 states have call successors, (12), 10 states have call predecessors, (12), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 02:28:21,009 INFO L87 Difference]: Start difference. First operand 95 states. Second operand has 95 states, 73 states have (on average 1.2191780821917808) internal successors, (89), 77 states have internal predecessors, (89), 12 states have call successors, (12), 10 states have call predecessors, (12), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 02:28:21,016 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:21,016 INFO L93 Difference]: Finished difference Result 95 states and 111 transitions. [2022-04-15 02:28:21,016 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 111 transitions. [2022-04-15 02:28:21,016 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:28:21,016 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:28:21,016 INFO L74 IsIncluded]: Start isIncluded. First operand has 95 states, 73 states have (on average 1.2191780821917808) internal successors, (89), 77 states have internal predecessors, (89), 12 states have call successors, (12), 10 states have call predecessors, (12), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) Second operand 95 states. [2022-04-15 02:28:21,016 INFO L87 Difference]: Start difference. First operand has 95 states, 73 states have (on average 1.2191780821917808) internal successors, (89), 77 states have internal predecessors, (89), 12 states have call successors, (12), 10 states have call predecessors, (12), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) Second operand 95 states. [2022-04-15 02:28:21,018 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 02:28:21,018 INFO L93 Difference]: Finished difference Result 95 states and 111 transitions. [2022-04-15 02:28:21,018 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 111 transitions. [2022-04-15 02:28:21,018 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 02:28:21,018 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 02:28:21,018 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 02:28:21,018 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 02:28:21,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 95 states, 73 states have (on average 1.2191780821917808) internal successors, (89), 77 states have internal predecessors, (89), 12 states have call successors, (12), 10 states have call predecessors, (12), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 02:28:21,020 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 95 states to 95 states and 111 transitions. [2022-04-15 02:28:21,020 INFO L78 Accepts]: Start accepts. Automaton has 95 states and 111 transitions. Word has length 35 [2022-04-15 02:28:21,020 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 02:28:21,020 INFO L478 AbstractCegarLoop]: Abstraction has 95 states and 111 transitions. [2022-04-15 02:28:21,020 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-15 02:28:21,020 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 111 transitions. [2022-04-15 02:28:21,020 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-15 02:28:21,020 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 02:28:21,021 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 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-15 02:28:21,041 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-15 02:28:21,239 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-15 02:28:21,239 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 02:28:21,240 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 02:28:21,240 INFO L85 PathProgramCache]: Analyzing trace with hash 1291395213, now seen corresponding path program 1 times [2022-04-15 02:28:21,240 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 02:28:21,240 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [656868793] [2022-04-15 02:28:21,240 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:28:21,240 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 02:28:21,267 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 02:28:21,267 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [615512015] [2022-04-15 02:28:21,267 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 02:28:21,267 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 02:28:21,267 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 02:28:21,288 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 02:28:21,327 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process