/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_unwindbound50.i -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 00:34:10,394 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 00:34:10,395 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 00:34:10,429 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 00:34:10,429 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 00:34:10,430 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 00:34:10,431 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 00:34:10,436 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 00:34:10,438 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 00:34:10,441 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 00:34:10,441 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 00:34:10,442 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 00:34:10,442 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 00:34:10,442 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 00:34:10,443 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 00:34:10,444 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 00:34:10,444 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 00:34:10,445 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 00:34:10,445 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 00:34:10,446 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 00:34:10,447 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 00:34:10,448 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 00:34:10,448 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 00:34:10,449 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 00:34:10,449 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 00:34:10,451 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 00:34:10,451 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 00:34:10,452 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 00:34:10,452 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 00:34:10,452 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 00:34:10,453 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 00:34:10,453 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 00:34:10,454 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 00:34:10,454 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 00:34:10,454 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 00:34:10,455 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 00:34:10,455 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 00:34:10,456 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 00:34:10,456 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 00:34:10,456 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 00:34:10,456 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 00:34:10,457 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 00:34:10,458 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-08 00:34:10,473 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 00:34:10,473 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 00:34:10,474 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-08 00:34:10,474 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-08 00:34:10,474 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-08 00:34:10,474 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-08 00:34:10,475 INFO L138 SettingsManager]: * Use SBE=true [2022-04-08 00:34:10,475 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 00:34:10,475 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 00:34:10,475 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 00:34:10,475 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 00:34:10,475 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 00:34:10,475 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 00:34:10,475 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 00:34:10,475 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 00:34:10,476 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 00:34:10,476 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 00:34:10,476 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 00:34:10,476 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 00:34:10,476 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 00:34:10,476 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 00:34:10,476 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-08 00:34:10,476 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-08 00:34:10,476 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-08 00:34:10,476 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-08 00:34:10,477 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 00:34:10,477 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-08 00:34:10,477 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-08 00:34:10,477 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-08 00:34:10,477 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_QVASR WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-08 00:34:10,664 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 00:34:10,679 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 00:34:10,681 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 00:34:10,681 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 00:34:10,686 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 00:34:10,689 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/divbin_unwindbound50.i [2022-04-08 00:34:10,729 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d2ed3f502/305483c45eb54daabe068cfe20788973/FLAG8c5c4f436 [2022-04-08 00:34:11,106 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 00:34:11,107 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/divbin_unwindbound50.i [2022-04-08 00:34:11,112 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d2ed3f502/305483c45eb54daabe068cfe20788973/FLAG8c5c4f436 [2022-04-08 00:34:11,131 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d2ed3f502/305483c45eb54daabe068cfe20788973 [2022-04-08 00:34:11,133 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 00:34:11,135 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-08 00:34:11,137 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 00:34:11,137 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 00:34:11,139 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 00:34:11,143 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 12:34:11" (1/1) ... [2022-04-08 00:34:11,144 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1b198301 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:34:11, skipping insertion in model container [2022-04-08 00:34:11,144 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 12:34:11" (1/1) ... [2022-04-08 00:34:11,150 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 00:34:11,161 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 00:34:11,341 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_unwindbound50.i[950,963] [2022-04-08 00:34:11,373 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 00:34:11,381 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 00:34:11,392 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_unwindbound50.i[950,963] [2022-04-08 00:34:11,410 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 00:34:11,420 INFO L208 MainTranslator]: Completed translation [2022-04-08 00:34:11,420 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:34:11 WrapperNode [2022-04-08 00:34:11,420 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 00:34:11,421 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 00:34:11,421 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 00:34:11,421 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 00:34:11,429 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:34:11" (1/1) ... [2022-04-08 00:34:11,430 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:34:11" (1/1) ... [2022-04-08 00:34:11,435 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:34:11" (1/1) ... [2022-04-08 00:34:11,435 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:34:11" (1/1) ... [2022-04-08 00:34:11,447 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:34:11" (1/1) ... [2022-04-08 00:34:11,453 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:34:11" (1/1) ... [2022-04-08 00:34:11,456 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:34:11" (1/1) ... [2022-04-08 00:34:11,459 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 00:34:11,460 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 00:34:11,460 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 00:34:11,460 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 00:34:11,461 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:34:11" (1/1) ... [2022-04-08 00:34:11,467 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 00:34:11,474 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:34:11,483 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-08 00:34:11,511 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-08 00:34:11,520 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 00:34:11,524 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 00:34:11,524 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 00:34:11,524 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 00:34:11,524 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 00:34:11,524 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 00:34:11,525 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 00:34:11,525 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 00:34:11,526 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_perror_fail [2022-04-08 00:34:11,526 INFO L130 BoogieDeclarations]: Found specification of procedure __assert [2022-04-08 00:34:11,527 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 00:34:11,527 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 00:34:11,527 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-08 00:34:11,527 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 00:34:11,527 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 00:34:11,527 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 00:34:11,527 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 00:34:11,527 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 00:34:11,527 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 00:34:11,527 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 00:34:11,527 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 00:34:11,527 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 00:34:11,590 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 00:34:11,591 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 00:34:11,777 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 00:34:11,782 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 00:34:11,782 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-08 00:34:11,791 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 12:34:11 BoogieIcfgContainer [2022-04-08 00:34:11,791 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 00:34:11,792 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-08 00:34:11,792 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-08 00:34:11,793 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-08 00:34:11,795 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 12:34:11" (1/1) ... [2022-04-08 00:34:11,796 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-08 00:34:11,830 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 08.04 12:34:11 BasicIcfg [2022-04-08 00:34:11,830 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-08 00:34:11,831 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 00:34:11,832 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 00:34:11,834 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 00:34:11,834 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 12:34:11" (1/4) ... [2022-04-08 00:34:11,834 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4a83a20b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 12:34:11, skipping insertion in model container [2022-04-08 00:34:11,834 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:34:11" (2/4) ... [2022-04-08 00:34:11,835 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4a83a20b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 12:34:11, skipping insertion in model container [2022-04-08 00:34:11,835 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 12:34:11" (3/4) ... [2022-04-08 00:34:11,835 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4a83a20b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 12:34:11, skipping insertion in model container [2022-04-08 00:34:11,835 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 08.04 12:34:11" (4/4) ... [2022-04-08 00:34:11,836 INFO L111 eAbstractionObserver]: Analyzing ICFG divbin_unwindbound50.iqvasr [2022-04-08 00:34:11,839 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-08 00:34:11,839 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 00:34:11,878 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 00:34:11,887 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-08 00:34:11,887 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 00:34:11,901 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-08 00:34:11,905 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-08 00:34:11,905 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:34:11,905 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-08 00:34:11,906 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:34:11,909 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:34:11,909 INFO L85 PathProgramCache]: Analyzing trace with hash 35225450, now seen corresponding path program 1 times [2022-04-08 00:34:11,916 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:34:11,917 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1141439551] [2022-04-08 00:34:11,917 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:11,918 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:34:11,997 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:12,080 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 00:34:12,087 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:12,097 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-08 00:34:12,098 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-08 00:34:12,098 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-08 00:34:12,099 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 00:34:12,100 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:12,104 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-08 00:34:12,105 INFO L290 TraceCheckUtils]: 1: Hoare triple {36#true} [102] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-08 00:34:12,105 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-08 00:34:12,105 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-08 00:34:12,106 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-08 00:34:12,107 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:12,116 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-08 00:34:12,117 INFO L290 TraceCheckUtils]: 1: Hoare triple {36#true} [102] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-08 00:34:12,117 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-08 00:34:12,118 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-08 00:34:12,119 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-08 00:34:12,119 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-08 00:34:12,119 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-08 00:34:12,120 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-08 00:34:12,120 INFO L272 TraceCheckUtils]: 4: Hoare triple {36#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#true} is VALID [2022-04-08 00:34:12,120 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-08 00:34:12,120 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-08 00:34:12,121 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-08 00:34:12,122 INFO L290 TraceCheckUtils]: 8: Hoare triple {36#true} [102] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-08 00:34:12,122 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-08 00:34:12,123 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-08 00:34:12,123 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-08 00:34:12,123 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-08 00:34:12,125 INFO L290 TraceCheckUtils]: 13: Hoare triple {36#true} [102] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-08 00:34:12,126 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-08 00:34:12,126 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-08 00:34:12,126 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-08 00:34:12,127 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-08 00:34:12,127 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-08 00:34:12,129 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-08 00:34:12,129 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-08 00:34:12,129 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-08 00:34:12,130 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-08 00:34:12,130 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-08 00:34:12,131 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:34:12,131 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1141439551] [2022-04-08 00:34:12,132 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1141439551] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 00:34:12,132 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 00:34:12,132 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 00:34:12,133 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [206162186] [2022-04-08 00:34:12,134 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 00:34:12,137 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-08 00:34:12,138 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:34:12,140 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-08 00:34:12,169 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 00:34:12,169 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 00:34:12,170 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:34:12,190 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 00:34:12,191 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 00:34:12,195 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-08 00:34:12,336 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:12,336 INFO L93 Difference]: Finished difference Result 60 states and 84 transitions. [2022-04-08 00:34:12,337 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 00:34:12,337 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-08 00:34:12,337 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:34:12,338 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-08 00:34:12,344 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 84 transitions. [2022-04-08 00:34:12,345 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-08 00:34:12,350 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 84 transitions. [2022-04-08 00:34:12,350 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 84 transitions. [2022-04-08 00:34:12,462 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-08 00:34:12,474 INFO L225 Difference]: With dead ends: 60 [2022-04-08 00:34:12,474 INFO L226 Difference]: Without dead ends: 29 [2022-04-08 00:34:12,479 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-08 00:34:12,483 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-08 00:34:12,489 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-08 00:34:12,500 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-08 00:34:12,514 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 28. [2022-04-08 00:34:12,514 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:34:12,516 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-08 00:34:12,516 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-08 00:34:12,517 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-08 00:34:12,522 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:12,522 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-08 00:34:12,523 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-08 00:34:12,523 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:12,523 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:12,523 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-08 00:34:12,524 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-08 00:34:12,526 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:12,526 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-08 00:34:12,526 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-08 00:34:12,526 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:12,526 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:12,526 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:34:12,527 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:34:12,527 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-08 00:34:12,529 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 34 transitions. [2022-04-08 00:34:12,529 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 34 transitions. Word has length 23 [2022-04-08 00:34:12,530 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:34:12,530 INFO L478 AbstractCegarLoop]: Abstraction has 28 states and 34 transitions. [2022-04-08 00:34:12,530 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-08 00:34:12,530 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-08 00:34:12,530 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-08 00:34:12,531 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:34:12,531 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-08 00:34:12,531 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 00:34:12,531 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:34:12,531 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:34:12,532 INFO L85 PathProgramCache]: Analyzing trace with hash 106385839, now seen corresponding path program 1 times [2022-04-08 00:34:12,532 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:34:12,532 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1387242989] [2022-04-08 00:34:12,532 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:12,532 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:34:12,545 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:34:12,545 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [642150524] [2022-04-08 00:34:12,546 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:12,546 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:34:12,546 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:34:12,560 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 00:34:12,562 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-08 00:34:12,600 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:12,602 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 00:34:12,609 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:12,612 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:34:12,791 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-08 00:34:12,792 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-08 00:34:12,793 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-08 00:34:12,793 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-08 00:34:12,793 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-08 00:34:12,794 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-08 00:34:12,795 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-08 00:34:12,796 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-08 00:34:12,796 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-08 00:34:12,797 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-08 00:34:12,797 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-08 00:34:12,798 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-08 00:34:12,798 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-08 00:34:12,799 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-08 00:34:12,802 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-08 00:34:12,804 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-08 00:34:12,804 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-08 00:34:12,805 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-08 00:34:12,805 INFO L290 TraceCheckUtils]: 18: Hoare triple {284#(<= |main_#t~post3| 0)} [109] L36-1-->L45-2: Formula: (not (< |v_main_#t~post3_3| 50)) InVars {main_#t~post3=|v_main_#t~post3_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {228#false} is VALID [2022-04-08 00:34:12,806 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-08 00:34:12,806 INFO L290 TraceCheckUtils]: 20: Hoare triple {228#false} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 50)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {228#false} is VALID [2022-04-08 00:34:12,808 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-08 00:34:12,808 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-08 00:34:12,808 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-08 00:34:12,808 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-08 00:34:12,809 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-08 00:34:12,809 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 00:34:12,809 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:34:12,809 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1387242989] [2022-04-08 00:34:12,809 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:34:12,810 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [642150524] [2022-04-08 00:34:12,816 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [642150524] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 00:34:12,816 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 00:34:12,816 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 00:34:12,817 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [943829623] [2022-04-08 00:34:12,817 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 00:34:12,818 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-08 00:34:12,818 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:34:12,818 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-08 00:34:12,834 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-08 00:34:12,835 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 00:34:12,835 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:34:12,836 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 00:34:12,836 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 00:34:12,837 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-08 00:34:12,897 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:12,897 INFO L93 Difference]: Finished difference Result 42 states and 52 transitions. [2022-04-08 00:34:12,897 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 00:34:12,897 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-08 00:34:12,898 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:34:12,898 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-08 00:34:12,905 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 52 transitions. [2022-04-08 00:34:12,905 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-08 00:34:12,909 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 52 transitions. [2022-04-08 00:34:12,909 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 52 transitions. [2022-04-08 00:34:12,943 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-08 00:34:12,945 INFO L225 Difference]: With dead ends: 42 [2022-04-08 00:34:12,945 INFO L226 Difference]: Without dead ends: 30 [2022-04-08 00:34:12,946 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-08 00:34:12,948 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-08 00:34:12,948 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-08 00:34:12,950 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2022-04-08 00:34:12,958 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 30. [2022-04-08 00:34:12,958 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:34:12,959 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-08 00:34:12,960 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-08 00:34:12,961 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-08 00:34:12,964 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:12,964 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2022-04-08 00:34:12,964 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2022-04-08 00:34:12,965 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:12,965 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:12,967 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-08 00:34:12,967 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-08 00:34:12,980 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:12,980 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2022-04-08 00:34:12,980 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2022-04-08 00:34:12,981 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:12,981 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:12,981 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:34:12,981 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:34:13,007 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-08 00:34:13,008 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 36 transitions. [2022-04-08 00:34:13,009 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 36 transitions. Word has length 25 [2022-04-08 00:34:13,009 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:34:13,009 INFO L478 AbstractCegarLoop]: Abstraction has 30 states and 36 transitions. [2022-04-08 00:34:13,009 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-08 00:34:13,009 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2022-04-08 00:34:13,010 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-04-08 00:34:13,010 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:34:13,010 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-08 00:34:13,045 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-08 00:34:13,210 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:34:13,211 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:34:13,212 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:34:13,212 INFO L85 PathProgramCache]: Analyzing trace with hash 1662084126, now seen corresponding path program 1 times [2022-04-08 00:34:13,212 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:34:13,212 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1398872620] [2022-04-08 00:34:13,212 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:13,212 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:34:13,233 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:34:13,234 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [340273050] [2022-04-08 00:34:13,234 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:13,234 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:34:13,234 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:34:13,251 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 00:34:13,253 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-08 00:34:13,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:13,297 INFO L263 TraceCheckSpWp]: Trace formula consists of 91 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 00:34:13,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:13,319 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:34:13,481 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-08 00:34:13,482 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-08 00:34:13,482 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-08 00:34:13,482 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-08 00:34:13,483 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-08 00:34:13,483 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-08 00:34:13,484 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-08 00:34:13,484 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-08 00:34:13,485 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-08 00:34:13,485 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-08 00:34:13,486 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-08 00:34:13,487 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-08 00:34:13,487 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-08 00:34:13,487 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-08 00:34:13,488 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-08 00:34:13,488 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-08 00:34:13,489 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-08 00:34:13,490 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-08 00:34:13,490 INFO L290 TraceCheckUtils]: 18: Hoare triple {521#(<= ~counter~0 1)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 50) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {521#(<= ~counter~0 1)} is VALID [2022-04-08 00:34:13,490 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-08 00:34:13,491 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-08 00:34:13,491 INFO L290 TraceCheckUtils]: 21: Hoare triple {531#(<= |main_#t~post4| 1)} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 50)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {465#false} is VALID [2022-04-08 00:34:13,491 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-08 00:34:13,492 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-08 00:34:13,492 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-08 00:34:13,492 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-08 00:34:13,492 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-08 00:34:13,492 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 00:34:13,493 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:34:13,493 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1398872620] [2022-04-08 00:34:13,493 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:34:13,493 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [340273050] [2022-04-08 00:34:13,493 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [340273050] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 00:34:13,493 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 00:34:13,493 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 00:34:13,493 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [273634488] [2022-04-08 00:34:13,494 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 00:34:13,494 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-08 00:34:13,494 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:34:13,495 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-08 00:34:13,509 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-08 00:34:13,510 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 00:34:13,510 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:34:13,510 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 00:34:13,510 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 00:34:13,511 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-08 00:34:13,598 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:13,598 INFO L93 Difference]: Finished difference Result 41 states and 48 transitions. [2022-04-08 00:34:13,598 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 00:34:13,598 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-08 00:34:13,598 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:34:13,598 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-08 00:34:13,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2022-04-08 00:34:13,600 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-08 00:34:13,601 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2022-04-08 00:34:13,601 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 48 transitions. [2022-04-08 00:34:13,638 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 00:34:13,640 INFO L225 Difference]: With dead ends: 41 [2022-04-08 00:34:13,640 INFO L226 Difference]: Without dead ends: 34 [2022-04-08 00:34:13,640 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-08 00:34:13,641 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-08 00:34:13,641 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-08 00:34:13,641 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-08 00:34:13,647 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2022-04-08 00:34:13,647 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:34:13,647 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-08 00:34:13,647 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-08 00:34:13,648 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-08 00:34:13,649 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:13,649 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-08 00:34:13,649 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2022-04-08 00:34:13,649 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:13,650 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:13,650 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-08 00:34:13,650 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-08 00:34:13,651 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:13,651 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-08 00:34:13,651 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2022-04-08 00:34:13,652 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:13,652 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:13,652 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:34:13,652 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:34:13,652 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-08 00:34:13,653 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 40 transitions. [2022-04-08 00:34:13,653 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 40 transitions. Word has length 26 [2022-04-08 00:34:13,653 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:34:13,653 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 40 transitions. [2022-04-08 00:34:13,653 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-08 00:34:13,653 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 40 transitions. [2022-04-08 00:34:13,654 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-04-08 00:34:13,654 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:34:13,654 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-08 00:34:13,673 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-08 00:34:13,871 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-08 00:34:13,873 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:34:13,873 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:34:13,873 INFO L85 PathProgramCache]: Analyzing trace with hash 1663216184, now seen corresponding path program 1 times [2022-04-08 00:34:13,874 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:34:13,874 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1351935192] [2022-04-08 00:34:13,874 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:13,874 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:34:13,899 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:34:13,899 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1810571550] [2022-04-08 00:34:13,900 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:13,900 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:34:13,900 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:34:13,903 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 00:34:13,904 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-08 00:34:13,942 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:13,943 INFO L263 TraceCheckSpWp]: Trace formula consists of 91 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 00:34:13,958 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:13,958 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:34:14,668 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-08 00:34:14,668 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-08 00:34:14,669 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-08 00:34:14,669 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-08 00:34:14,669 INFO L272 TraceCheckUtils]: 4: Hoare triple {715#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#true} is VALID [2022-04-08 00:34:14,669 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-08 00:34:14,669 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-08 00:34:14,669 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-08 00:34:14,670 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-08 00:34:14,670 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-08 00:34:14,671 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-08 00:34:14,671 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-08 00:34:14,671 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-08 00:34:14,671 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-08 00:34:14,671 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-08 00:34:14,672 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-08 00:34:14,673 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-08 00:34:14,673 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-08 00:34:14,675 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| 50) 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-08 00:34:14,676 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-08 00:34:14,676 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-08 00:34:14,677 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| 50) 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-08 00:34:14,678 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-08 00:34:14,678 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-08 00:34:14,679 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-08 00:34:14,679 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-08 00:34:14,679 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-08 00:34:14,679 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 00:34:15,009 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-08 00:34:15,010 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-08 00:34:15,010 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-08 00:34:15,011 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-08 00:34:15,013 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| 50) 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-08 00:34:15,013 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-08 00:34:15,017 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-08 00:34:15,018 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| 50) 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-08 00:34:15,018 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-08 00:34:15,019 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-08 00:34:15,019 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-08 00:34:15,019 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-08 00:34:15,019 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-08 00:34:15,019 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-08 00:34:15,020 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-08 00:34:15,020 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-08 00:34:15,020 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-08 00:34:15,020 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-08 00:34:15,020 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-08 00:34:15,020 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-08 00:34:15,020 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-08 00:34:15,020 INFO L272 TraceCheckUtils]: 4: Hoare triple {715#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {715#true} is VALID [2022-04-08 00:34:15,021 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-08 00:34:15,021 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-08 00:34:15,021 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-08 00:34:15,021 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-08 00:34:15,021 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-08 00:34:15,021 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:34:15,021 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1351935192] [2022-04-08 00:34:15,021 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:34:15,021 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1810571550] [2022-04-08 00:34:15,022 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1810571550] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 00:34:15,022 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 00:34:15,022 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-08 00:34:15,022 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1798684526] [2022-04-08 00:34:15,022 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 00:34:15,022 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-08 00:34:15,022 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:34:15,022 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-08 00:34:15,044 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-08 00:34:15,044 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 00:34:15,044 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:34:15,045 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 00:34:15,045 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-08 00:34:15,045 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-08 00:34:17,350 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:34:19,430 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:34:21,774 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:21,774 INFO L93 Difference]: Finished difference Result 42 states and 50 transitions. [2022-04-08 00:34:21,774 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 00:34:21,774 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-08 00:34:21,774 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:34:21,774 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-08 00:34:21,775 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 50 transitions. [2022-04-08 00:34:21,776 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-08 00:34:21,776 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 50 transitions. [2022-04-08 00:34:21,776 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 50 transitions. [2022-04-08 00:34:21,817 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-08 00:34:21,818 INFO L225 Difference]: With dead ends: 42 [2022-04-08 00:34:21,818 INFO L226 Difference]: Without dead ends: 39 [2022-04-08 00:34:21,819 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-08 00:34:21,819 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 11 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 49 mSolverCounterSat, 2 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 126 SdHoareTripleChecker+Invalid, 53 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 49 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 4.2s IncrementalHoareTripleChecker+Time [2022-04-08 00:34:21,820 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 126 Invalid, 53 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 49 Invalid, 2 Unknown, 0 Unchecked, 4.2s Time] [2022-04-08 00:34:21,820 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2022-04-08 00:34:21,828 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 39. [2022-04-08 00:34:21,828 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:34:21,828 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-08 00:34:21,828 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-08 00:34:21,828 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-08 00:34:21,829 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:21,830 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-08 00:34:21,830 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-08 00:34:21,830 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:21,830 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:21,830 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-08 00:34:21,830 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-08 00:34:21,831 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:21,831 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-08 00:34:21,831 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-08 00:34:21,832 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:21,832 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:21,832 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:34:21,832 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:34:21,832 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-08 00:34:21,833 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 46 transitions. [2022-04-08 00:34:21,833 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 46 transitions. Word has length 26 [2022-04-08 00:34:21,833 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:34:21,833 INFO L478 AbstractCegarLoop]: Abstraction has 39 states and 46 transitions. [2022-04-08 00:34:21,833 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-08 00:34:21,833 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-08 00:34:21,834 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 00:34:21,834 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:34:21,834 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-08 00:34:21,850 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-08 00:34:22,050 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:34:22,050 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:34:22,051 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:34:22,051 INFO L85 PathProgramCache]: Analyzing trace with hash -1664227005, now seen corresponding path program 1 times [2022-04-08 00:34:22,051 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:34:22,051 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [444012821] [2022-04-08 00:34:22,051 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:22,051 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:34:22,067 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:34:22,067 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1293616740] [2022-04-08 00:34:22,068 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:22,068 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:34:22,068 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:34:22,068 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 00:34:22,069 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-08 00:34:22,111 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:22,114 INFO L263 TraceCheckSpWp]: Trace formula consists of 98 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 00:34:22,122 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:22,122 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:34:22,248 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-08 00:34:22,249 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-08 00:34:22,249 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-08 00:34:22,250 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-08 00:34:22,250 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-08 00:34:22,251 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-08 00:34:22,251 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-08 00:34:22,251 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-08 00:34:22,252 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-08 00:34:22,252 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-08 00:34:22,252 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-08 00:34:22,253 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-08 00:34:22,253 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-08 00:34:22,254 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-08 00:34:22,254 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-08 00:34:22,254 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-08 00:34:22,255 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-08 00:34:22,255 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-08 00:34:22,256 INFO L290 TraceCheckUtils]: 18: Hoare triple {1128#(<= ~counter~0 1)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 50) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1128#(<= ~counter~0 1)} is VALID [2022-04-08 00:34:22,256 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-08 00:34:22,256 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-08 00:34:22,257 INFO L290 TraceCheckUtils]: 21: Hoare triple {1138#(<= |main_#t~post3| 1)} [109] L36-1-->L45-2: Formula: (not (< |v_main_#t~post3_3| 50)) InVars {main_#t~post3=|v_main_#t~post3_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1072#false} is VALID [2022-04-08 00:34:22,257 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-08 00:34:22,257 INFO L290 TraceCheckUtils]: 23: Hoare triple {1072#false} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 50)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1072#false} is VALID [2022-04-08 00:34:22,257 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-08 00:34:22,257 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-08 00:34:22,257 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-08 00:34:22,258 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-08 00:34:22,258 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-08 00:34:22,258 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 00:34:22,433 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-08 00:34:22,433 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-08 00:34:22,433 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-08 00:34:22,434 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-08 00:34:22,434 INFO L290 TraceCheckUtils]: 23: Hoare triple {1072#false} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 50)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1072#false} is VALID [2022-04-08 00:34:22,434 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-08 00:34:22,435 INFO L290 TraceCheckUtils]: 21: Hoare triple {1178#(< |main_#t~post3| 50)} [109] L36-1-->L45-2: Formula: (not (< |v_main_#t~post3_3| 50)) InVars {main_#t~post3=|v_main_#t~post3_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1072#false} is VALID [2022-04-08 00:34:22,435 INFO L290 TraceCheckUtils]: 20: Hoare triple {1182#(< ~counter~0 50)} [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| 50)} is VALID [2022-04-08 00:34:22,436 INFO L290 TraceCheckUtils]: 19: Hoare triple {1182#(< ~counter~0 50)} [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 50)} is VALID [2022-04-08 00:34:22,436 INFO L290 TraceCheckUtils]: 18: Hoare triple {1182#(< ~counter~0 50)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 50) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1182#(< ~counter~0 50)} is VALID [2022-04-08 00:34:22,437 INFO L290 TraceCheckUtils]: 17: Hoare triple {1192#(< ~counter~0 49)} [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 50)} is VALID [2022-04-08 00:34:22,437 INFO L290 TraceCheckUtils]: 16: Hoare triple {1192#(< ~counter~0 49)} [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 49)} is VALID [2022-04-08 00:34:22,438 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1071#true} {1192#(< ~counter~0 49)} [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 49)} is VALID [2022-04-08 00:34:22,438 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-08 00:34:22,438 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-08 00:34:22,438 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-08 00:34:22,439 INFO L272 TraceCheckUtils]: 11: Hoare triple {1192#(< ~counter~0 49)} [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-08 00:34:22,440 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1071#true} {1192#(< ~counter~0 49)} [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 49)} is VALID [2022-04-08 00:34:22,440 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-08 00:34:22,440 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-08 00:34:22,440 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-08 00:34:22,440 INFO L272 TraceCheckUtils]: 6: Hoare triple {1192#(< ~counter~0 49)} [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-08 00:34:22,441 INFO L290 TraceCheckUtils]: 5: Hoare triple {1192#(< ~counter~0 49)} [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 49)} is VALID [2022-04-08 00:34:22,441 INFO L272 TraceCheckUtils]: 4: Hoare triple {1192#(< ~counter~0 49)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1192#(< ~counter~0 49)} is VALID [2022-04-08 00:34:22,442 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1192#(< ~counter~0 49)} {1071#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1192#(< ~counter~0 49)} is VALID [2022-04-08 00:34:22,442 INFO L290 TraceCheckUtils]: 2: Hoare triple {1192#(< ~counter~0 49)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1192#(< ~counter~0 49)} is VALID [2022-04-08 00:34:22,443 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 49)} is VALID [2022-04-08 00:34:22,443 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-08 00:34:22,443 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-08 00:34:22,443 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:34:22,443 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [444012821] [2022-04-08 00:34:22,443 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:34:22,443 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1293616740] [2022-04-08 00:34:22,443 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1293616740] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 00:34:22,443 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 00:34:22,443 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-08 00:34:22,444 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [227817400] [2022-04-08 00:34:22,444 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 00:34:22,444 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-08 00:34:22,445 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:34:22,445 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-08 00:34:22,475 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-08 00:34:22,476 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 00:34:22,476 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:34:22,476 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 00:34:22,476 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-08 00:34:22,476 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-08 00:34:22,711 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:22,711 INFO L93 Difference]: Finished difference Result 73 states and 92 transitions. [2022-04-08 00:34:22,711 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 00:34:22,711 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-08 00:34:22,712 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:34:22,712 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-08 00:34:22,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 92 transitions. [2022-04-08 00:34:22,713 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-08 00:34:22,715 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 92 transitions. [2022-04-08 00:34:22,715 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 92 transitions. [2022-04-08 00:34:22,779 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-08 00:34:22,780 INFO L225 Difference]: With dead ends: 73 [2022-04-08 00:34:22,780 INFO L226 Difference]: Without dead ends: 61 [2022-04-08 00:34:22,780 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-08 00:34:22,781 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-08 00:34:22,781 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-08 00:34:22,781 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states. [2022-04-08 00:34:22,795 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 47. [2022-04-08 00:34:22,795 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:34:22,795 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-08 00:34:22,795 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-08 00:34:22,796 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-08 00:34:22,798 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:22,798 INFO L93 Difference]: Finished difference Result 61 states and 74 transitions. [2022-04-08 00:34:22,798 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 74 transitions. [2022-04-08 00:34:22,799 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:22,799 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:22,800 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-08 00:34:22,801 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-08 00:34:22,804 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:22,804 INFO L93 Difference]: Finished difference Result 61 states and 74 transitions. [2022-04-08 00:34:22,804 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 74 transitions. [2022-04-08 00:34:22,805 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:22,805 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:22,805 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:34:22,805 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:34:22,805 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-08 00:34:22,807 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 56 transitions. [2022-04-08 00:34:22,807 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 56 transitions. Word has length 28 [2022-04-08 00:34:22,807 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:34:22,807 INFO L478 AbstractCegarLoop]: Abstraction has 47 states and 56 transitions. [2022-04-08 00:34:22,808 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-08 00:34:22,808 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 56 transitions. [2022-04-08 00:34:22,808 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-08 00:34:22,808 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:34:22,808 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-08 00:34:22,827 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-08 00:34:23,023 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:34:23,023 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:34:23,024 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:34:23,024 INFO L85 PathProgramCache]: Analyzing trace with hash -1687306486, now seen corresponding path program 1 times [2022-04-08 00:34:23,024 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:34:23,024 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1437407307] [2022-04-08 00:34:23,024 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:23,024 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:34:23,039 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:34:23,040 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [995892820] [2022-04-08 00:34:23,040 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:23,040 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:34:23,040 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:34:23,043 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 00:34:23,046 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-08 00:34:23,077 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:23,077 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 00:34:23,084 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:23,085 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:34:23,248 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-08 00:34:23,249 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-08 00:34:23,250 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-08 00:34:23,250 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-08 00:34:23,250 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-08 00:34:23,251 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-08 00:34:23,251 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-08 00:34:23,254 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-08 00:34:23,255 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-08 00:34:23,255 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-08 00:34:23,255 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-08 00:34:23,256 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-08 00:34:23,256 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-08 00:34:23,256 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-08 00:34:23,257 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-08 00:34:23,257 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-08 00:34:23,257 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-08 00:34:23,258 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-08 00:34:23,258 INFO L290 TraceCheckUtils]: 18: Hoare triple {1591#(<= ~counter~0 1)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 50) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1591#(<= ~counter~0 1)} is VALID [2022-04-08 00:34:23,259 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-08 00:34:23,259 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-08 00:34:23,259 INFO L290 TraceCheckUtils]: 21: Hoare triple {1601#(<= ~counter~0 2)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 50) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1601#(<= ~counter~0 2)} is VALID [2022-04-08 00:34:23,260 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-08 00:34:23,260 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-08 00:34:23,260 INFO L290 TraceCheckUtils]: 24: Hoare triple {1611#(<= |main_#t~post4| 2)} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 50)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1535#false} is VALID [2022-04-08 00:34:23,261 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-08 00:34:23,261 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-08 00:34:23,261 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-08 00:34:23,261 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-08 00:34:23,261 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-08 00:34:23,261 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 00:34:23,452 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-08 00:34:23,452 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-08 00:34:23,452 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-08 00:34:23,453 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-08 00:34:23,453 INFO L290 TraceCheckUtils]: 24: Hoare triple {1639#(< |main_#t~post4| 50)} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 50)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1535#false} is VALID [2022-04-08 00:34:23,453 INFO L290 TraceCheckUtils]: 23: Hoare triple {1643#(< ~counter~0 50)} [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| 50)} is VALID [2022-04-08 00:34:23,454 INFO L290 TraceCheckUtils]: 22: Hoare triple {1643#(< ~counter~0 50)} [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 50)} is VALID [2022-04-08 00:34:23,455 INFO L290 TraceCheckUtils]: 21: Hoare triple {1643#(< ~counter~0 50)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 50) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1643#(< ~counter~0 50)} is VALID [2022-04-08 00:34:23,456 INFO L290 TraceCheckUtils]: 20: Hoare triple {1653#(< ~counter~0 49)} [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 50)} is VALID [2022-04-08 00:34:23,456 INFO L290 TraceCheckUtils]: 19: Hoare triple {1653#(< ~counter~0 49)} [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 49)} is VALID [2022-04-08 00:34:23,457 INFO L290 TraceCheckUtils]: 18: Hoare triple {1653#(< ~counter~0 49)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 50) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1653#(< ~counter~0 49)} is VALID [2022-04-08 00:34:23,457 INFO L290 TraceCheckUtils]: 17: Hoare triple {1663#(< ~counter~0 48)} [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 49)} is VALID [2022-04-08 00:34:23,457 INFO L290 TraceCheckUtils]: 16: Hoare triple {1663#(< ~counter~0 48)} [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 48)} is VALID [2022-04-08 00:34:23,458 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1534#true} {1663#(< ~counter~0 48)} [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 48)} is VALID [2022-04-08 00:34:23,458 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-08 00:34:23,458 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-08 00:34:23,458 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-08 00:34:23,458 INFO L272 TraceCheckUtils]: 11: Hoare triple {1663#(< ~counter~0 48)} [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-08 00:34:23,459 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1534#true} {1663#(< ~counter~0 48)} [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 48)} is VALID [2022-04-08 00:34:23,459 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-08 00:34:23,459 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-08 00:34:23,459 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-08 00:34:23,459 INFO L272 TraceCheckUtils]: 6: Hoare triple {1663#(< ~counter~0 48)} [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-08 00:34:23,463 INFO L290 TraceCheckUtils]: 5: Hoare triple {1663#(< ~counter~0 48)} [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 48)} is VALID [2022-04-08 00:34:23,464 INFO L272 TraceCheckUtils]: 4: Hoare triple {1663#(< ~counter~0 48)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1663#(< ~counter~0 48)} is VALID [2022-04-08 00:34:23,464 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1663#(< ~counter~0 48)} {1534#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1663#(< ~counter~0 48)} is VALID [2022-04-08 00:34:23,464 INFO L290 TraceCheckUtils]: 2: Hoare triple {1663#(< ~counter~0 48)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1663#(< ~counter~0 48)} is VALID [2022-04-08 00:34:23,465 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 48)} is VALID [2022-04-08 00:34:23,465 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-08 00:34:23,465 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-08 00:34:23,465 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:34:23,465 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1437407307] [2022-04-08 00:34:23,465 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:34:23,466 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [995892820] [2022-04-08 00:34:23,466 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [995892820] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 00:34:23,466 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 00:34:23,466 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-08 00:34:23,466 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [462806330] [2022-04-08 00:34:23,466 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 00:34:23,466 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-08 00:34:23,467 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:34:23,467 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-08 00:34:23,502 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-08 00:34:23,502 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 00:34:23,502 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:34:23,503 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 00:34:23,503 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 00:34:23,503 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-08 00:34:23,944 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:23,944 INFO L93 Difference]: Finished difference Result 98 states and 120 transitions. [2022-04-08 00:34:23,944 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 00:34:23,944 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-08 00:34:23,945 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:34:23,945 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-08 00:34:23,947 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 120 transitions. [2022-04-08 00:34:23,947 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-08 00:34:23,949 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 120 transitions. [2022-04-08 00:34:23,949 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 120 transitions. [2022-04-08 00:34:24,035 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-08 00:34:24,049 INFO L225 Difference]: With dead ends: 98 [2022-04-08 00:34:24,050 INFO L226 Difference]: Without dead ends: 91 [2022-04-08 00:34:24,050 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-08 00:34:24,052 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-08 00:34:24,052 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-08 00:34:24,053 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2022-04-08 00:34:24,079 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 84. [2022-04-08 00:34:24,079 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:34:24,080 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-08 00:34:24,080 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-08 00:34:24,080 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-08 00:34:24,083 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:24,083 INFO L93 Difference]: Finished difference Result 91 states and 110 transitions. [2022-04-08 00:34:24,083 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 110 transitions. [2022-04-08 00:34:24,083 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:24,084 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:24,084 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-08 00:34:24,084 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-08 00:34:24,087 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:24,087 INFO L93 Difference]: Finished difference Result 91 states and 110 transitions. [2022-04-08 00:34:24,087 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 110 transitions. [2022-04-08 00:34:24,087 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:24,087 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:24,087 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:34:24,087 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:34:24,088 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-08 00:34:24,090 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 106 transitions. [2022-04-08 00:34:24,090 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 106 transitions. Word has length 29 [2022-04-08 00:34:24,091 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:34:24,091 INFO L478 AbstractCegarLoop]: Abstraction has 84 states and 106 transitions. [2022-04-08 00:34:24,091 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-08 00:34:24,091 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 106 transitions. [2022-04-08 00:34:24,092 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-08 00:34:24,092 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:34:24,092 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-08 00:34:24,120 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-08 00:34:24,313 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:34:24,314 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:34:24,314 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:34:24,314 INFO L85 PathProgramCache]: Analyzing trace with hash -1686174428, now seen corresponding path program 1 times [2022-04-08 00:34:24,314 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:34:24,314 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [734579643] [2022-04-08 00:34:24,314 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:24,314 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:34:24,326 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:34:24,326 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [298583488] [2022-04-08 00:34:24,326 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:24,326 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:34:24,326 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:34:24,335 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 00:34:24,347 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-08 00:34:24,374 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:24,375 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 00:34:24,383 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:24,384 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:34:24,924 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-08 00:34:24,925 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-08 00:34:24,925 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-08 00:34:24,925 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-08 00:34:24,925 INFO L272 TraceCheckUtils]: 4: Hoare triple {2146#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2146#true} is VALID [2022-04-08 00:34:24,925 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-08 00:34:24,925 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-08 00:34:24,925 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-08 00:34:24,925 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-08 00:34:24,925 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-08 00:34:24,925 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-08 00:34:24,926 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-08 00:34:24,927 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-08 00:34:24,928 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-08 00:34:24,928 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-08 00:34:24,928 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-08 00:34:24,929 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-08 00:34:24,929 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-08 00:34:24,930 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| 50) 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-08 00:34:24,931 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-08 00:34:24,931 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-08 00:34:24,932 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| 50) 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-08 00:34:24,932 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-08 00:34:24,933 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-08 00:34:24,933 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| 50) 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-08 00:34:24,934 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-08 00:34:24,935 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-08 00:34:24,935 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-08 00:34:24,935 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-08 00:34:24,938 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-08 00:34:24,938 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 00:34:25,453 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-08 00:34:25,454 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-08 00:34:25,454 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-08 00:34:25,456 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-08 00:34:25,456 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| 50) 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-08 00:34:25,457 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-08 00:34:25,457 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-08 00:34:25,457 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| 50) 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-08 00:34:25,458 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-08 00:34:25,458 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-08 00:34:25,459 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| 50) 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-08 00:34:25,460 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-08 00:34:25,460 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-08 00:34:25,460 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-08 00:34:25,460 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-08 00:34:25,460 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-08 00:34:25,460 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-08 00:34:25,460 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-08 00:34:25,461 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-08 00:34:25,461 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-08 00:34:25,461 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-08 00:34:25,461 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-08 00:34:25,461 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-08 00:34:25,461 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-08 00:34:25,461 INFO L272 TraceCheckUtils]: 4: Hoare triple {2146#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2146#true} is VALID [2022-04-08 00:34:25,461 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-08 00:34:25,461 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-08 00:34:25,461 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-08 00:34:25,461 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-08 00:34:25,462 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-08 00:34:25,462 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:34:25,462 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [734579643] [2022-04-08 00:34:25,462 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:34:25,462 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [298583488] [2022-04-08 00:34:25,462 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [298583488] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 00:34:25,462 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 00:34:25,462 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-08 00:34:25,462 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [169934702] [2022-04-08 00:34:25,462 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 00:34:25,463 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-08 00:34:25,463 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:34:25,463 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-08 00:34:26,822 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-08 00:34:26,822 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 00:34:26,822 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:34:26,823 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 00:34:26,823 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=86, Unknown=0, NotChecked=0, Total=110 [2022-04-08 00:34:26,823 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-08 00:34:27,150 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:27,150 INFO L93 Difference]: Finished difference Result 117 states and 143 transitions. [2022-04-08 00:34:27,151 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 00:34:27,151 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-08 00:34:27,151 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:34:27,151 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-08 00:34:27,152 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 49 transitions. [2022-04-08 00:34:27,153 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-08 00:34:27,153 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 49 transitions. [2022-04-08 00:34:27,154 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 49 transitions. [2022-04-08 00:34:29,236 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-08 00:34:29,238 INFO L225 Difference]: With dead ends: 117 [2022-04-08 00:34:29,238 INFO L226 Difference]: Without dead ends: 115 [2022-04-08 00:34:29,238 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-08 00:34:29,239 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-08 00:34:29,239 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-08 00:34:29,240 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 115 states. [2022-04-08 00:34:29,268 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 115 to 114. [2022-04-08 00:34:29,268 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:34:29,268 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-08 00:34:29,269 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-08 00:34:29,269 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-08 00:34:29,272 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:29,272 INFO L93 Difference]: Finished difference Result 115 states and 138 transitions. [2022-04-08 00:34:29,272 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 138 transitions. [2022-04-08 00:34:29,272 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:29,272 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:29,273 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-08 00:34:29,273 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-08 00:34:29,276 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:29,276 INFO L93 Difference]: Finished difference Result 115 states and 138 transitions. [2022-04-08 00:34:29,276 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 138 transitions. [2022-04-08 00:34:29,276 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:29,277 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:29,277 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:34:29,277 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:34:29,277 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-08 00:34:29,280 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 114 states to 114 states and 137 transitions. [2022-04-08 00:34:29,280 INFO L78 Accepts]: Start accepts. Automaton has 114 states and 137 transitions. Word has length 29 [2022-04-08 00:34:29,280 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:34:29,280 INFO L478 AbstractCegarLoop]: Abstraction has 114 states and 137 transitions. [2022-04-08 00:34:29,281 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-08 00:34:29,281 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 137 transitions. [2022-04-08 00:34:29,281 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-08 00:34:29,281 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:34:29,281 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-08 00:34:29,301 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-08 00:34:29,495 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:34:29,496 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:34:29,496 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:34:29,496 INFO L85 PathProgramCache]: Analyzing trace with hash -665062919, now seen corresponding path program 1 times [2022-04-08 00:34:29,496 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:34:29,496 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [249966703] [2022-04-08 00:34:29,496 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:29,496 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:34:29,517 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:34:29,517 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [442183902] [2022-04-08 00:34:29,517 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:29,517 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:34:29,517 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:34:29,518 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 00:34:29,520 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-08 00:34:29,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:29,559 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 3 conjunts are in the unsatisfiable core [2022-04-08 00:34:29,571 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:29,572 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:34:29,664 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-08 00:34:29,664 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-08 00:34:29,664 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-08 00:34:29,664 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-08 00:34:29,664 INFO L272 TraceCheckUtils]: 4: Hoare triple {2864#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2864#true} is VALID [2022-04-08 00:34:29,665 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-08 00:34:29,665 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-08 00:34:29,665 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-08 00:34:29,665 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-08 00:34:29,665 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-08 00:34:29,665 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-08 00:34:29,665 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-08 00:34:29,665 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-08 00:34:29,665 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-08 00:34:29,666 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-08 00:34:29,666 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-08 00:34:29,666 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-08 00:34:29,667 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-08 00:34:29,667 INFO L290 TraceCheckUtils]: 18: Hoare triple {2917#(= main_~B~0 main_~b~0)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 50) 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-08 00:34:29,667 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-08 00:34:29,668 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-08 00:34:29,668 INFO L290 TraceCheckUtils]: 21: Hoare triple {2917#(= main_~B~0 main_~b~0)} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 50) 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-08 00:34:29,668 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-08 00:34:29,669 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-08 00:34:29,669 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-08 00:34:29,669 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-08 00:34:29,669 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-08 00:34:29,670 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-08 00:34:29,670 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-08 00:34:29,670 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-08 00:34:29,670 INFO L290 TraceCheckUtils]: 30: Hoare triple {2865#false} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 50) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {2865#false} is VALID [2022-04-08 00:34:29,670 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-08 00:34:29,670 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-08 00:34:29,671 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-08 00:34:29,671 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-08 00:34:29,671 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-08 00:34:29,671 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 00:34:29,671 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:34:29,671 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [249966703] [2022-04-08 00:34:29,671 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:34:29,671 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [442183902] [2022-04-08 00:34:29,671 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [442183902] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 00:34:29,672 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 00:34:29,672 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 00:34:29,672 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [669465614] [2022-04-08 00:34:29,672 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 00:34:29,672 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-08 00:34:29,672 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:34:29,675 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-08 00:34:29,698 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-08 00:34:29,698 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 00:34:29,698 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:34:29,699 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 00:34:29,699 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 00:34:29,699 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-08 00:34:29,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:29,807 INFO L93 Difference]: Finished difference Result 155 states and 189 transitions. [2022-04-08 00:34:29,808 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 00:34:29,808 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-08 00:34:29,808 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:34:29,808 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-08 00:34:29,809 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 58 transitions. [2022-04-08 00:34:29,809 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-08 00:34:29,810 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 58 transitions. [2022-04-08 00:34:29,810 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 58 transitions. [2022-04-08 00:34:29,852 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-08 00:34:29,854 INFO L225 Difference]: With dead ends: 155 [2022-04-08 00:34:29,854 INFO L226 Difference]: Without dead ends: 100 [2022-04-08 00:34:29,855 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-08 00:34:29,855 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-08 00:34:29,855 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-08 00:34:29,856 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2022-04-08 00:34:29,884 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 100. [2022-04-08 00:34:29,884 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:34:29,884 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-08 00:34:29,888 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-08 00:34:29,890 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-08 00:34:29,893 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:29,894 INFO L93 Difference]: Finished difference Result 100 states and 120 transitions. [2022-04-08 00:34:29,894 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 120 transitions. [2022-04-08 00:34:29,894 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:29,894 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:29,895 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-08 00:34:29,896 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-08 00:34:29,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:29,899 INFO L93 Difference]: Finished difference Result 100 states and 120 transitions. [2022-04-08 00:34:29,899 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 120 transitions. [2022-04-08 00:34:29,899 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:29,899 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:29,899 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:34:29,900 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:34:29,900 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-08 00:34:29,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 100 states to 100 states and 120 transitions. [2022-04-08 00:34:29,903 INFO L78 Accepts]: Start accepts. Automaton has 100 states and 120 transitions. Word has length 35 [2022-04-08 00:34:29,903 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:34:29,903 INFO L478 AbstractCegarLoop]: Abstraction has 100 states and 120 transitions. [2022-04-08 00:34:29,903 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-08 00:34:29,903 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 120 transitions. [2022-04-08 00:34:29,904 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-08 00:34:29,904 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:34:29,905 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-08 00:34:29,924 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-08 00:34:30,106 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-08 00:34:30,107 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:34:30,107 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:34:30,107 INFO L85 PathProgramCache]: Analyzing trace with hash 1800746756, now seen corresponding path program 1 times [2022-04-08 00:34:30,107 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:34:30,107 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [863670386] [2022-04-08 00:34:30,107 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:30,107 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:34:30,118 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:34:30,118 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2037206525] [2022-04-08 00:34:30,118 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:30,118 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:34:30,118 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:34:30,122 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-08 00:34:30,124 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-08 00:34:30,165 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:30,166 INFO L263 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 00:34:30,173 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:34:30,174 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:34:30,406 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-08 00:34:30,406 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-08 00:34:30,406 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-08 00:34:30,407 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-08 00:34:30,407 INFO L272 TraceCheckUtils]: 4: Hoare triple {3504#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3504#true} is VALID [2022-04-08 00:34:30,407 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-08 00:34:30,407 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-08 00:34:30,407 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-08 00:34:30,407 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-08 00:34:30,407 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-08 00:34:30,407 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-08 00:34:30,407 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-08 00:34:30,407 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-08 00:34:30,407 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-08 00:34:30,407 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-08 00:34:30,408 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-08 00:34:30,408 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-08 00:34:30,408 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-08 00:34:30,408 INFO L290 TraceCheckUtils]: 18: Hoare triple {3504#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 50) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3504#true} is VALID [2022-04-08 00:34:30,408 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-08 00:34:30,408 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-08 00:34:30,408 INFO L290 TraceCheckUtils]: 21: Hoare triple {3504#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 50) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3504#true} is VALID [2022-04-08 00:34:30,408 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-08 00:34:30,408 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-08 00:34:30,408 INFO L290 TraceCheckUtils]: 24: Hoare triple {3504#true} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 50) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {3504#true} is VALID [2022-04-08 00:34:30,408 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-08 00:34:30,409 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-08 00:34:30,409 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-08 00:34:30,409 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-08 00:34:30,411 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-08 00:34:30,411 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-08 00:34:30,412 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-08 00:34:30,412 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-08 00:34:30,412 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-08 00:34:30,412 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-08 00:34:30,413 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-08 00:34:30,413 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 00:34:31,433 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-08 00:34:31,434 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-08 00:34:31,434 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-08 00:34:31,435 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-08 00:34:31,436 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-08 00:34:31,436 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-08 00:34:31,437 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-08 00:34:31,437 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-08 00:34:31,437 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-08 00:34:31,438 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-08 00:34:31,438 INFO L290 TraceCheckUtils]: 24: Hoare triple {3504#true} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 50) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {3504#true} is VALID [2022-04-08 00:34:31,438 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-08 00:34:31,438 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-08 00:34:31,438 INFO L290 TraceCheckUtils]: 21: Hoare triple {3504#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 50) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3504#true} is VALID [2022-04-08 00:34:31,438 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-08 00:34:31,438 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-08 00:34:31,438 INFO L290 TraceCheckUtils]: 18: Hoare triple {3504#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 50) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3504#true} is VALID [2022-04-08 00:34:31,438 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-08 00:34:31,438 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-08 00:34:31,438 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-08 00:34:31,438 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-08 00:34:31,439 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-08 00:34:31,439 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-08 00:34:31,439 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-08 00:34:31,439 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-08 00:34:31,439 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-08 00:34:31,439 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-08 00:34:31,439 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-08 00:34:31,439 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-08 00:34:31,439 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-08 00:34:31,439 INFO L272 TraceCheckUtils]: 4: Hoare triple {3504#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3504#true} is VALID [2022-04-08 00:34:31,439 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-08 00:34:31,439 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-08 00:34:31,440 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-08 00:34:31,440 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-08 00:34:31,440 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-08 00:34:31,440 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:34:31,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [863670386] [2022-04-08 00:34:31,440 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:34:31,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2037206525] [2022-04-08 00:34:31,440 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2037206525] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 00:34:31,440 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 00:34:31,440 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6] total 9 [2022-04-08 00:34:31,440 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [887841131] [2022-04-08 00:34:31,440 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 00:34:31,441 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-08 00:34:31,441 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:34:31,441 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-08 00:34:31,472 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-08 00:34:31,472 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 00:34:31,472 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:34:31,472 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 00:34:31,472 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-04-08 00:34:31,473 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-08 00:34:33,083 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:33,084 INFO L93 Difference]: Finished difference Result 115 states and 134 transitions. [2022-04-08 00:34:33,084 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 00:34:33,084 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-08 00:34:33,084 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:34:33,084 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-08 00:34:33,085 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 43 transitions. [2022-04-08 00:34:33,085 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-08 00:34:33,086 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 43 transitions. [2022-04-08 00:34:33,086 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 43 transitions. [2022-04-08 00:34:33,121 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-08 00:34:33,122 INFO L225 Difference]: With dead ends: 115 [2022-04-08 00:34:33,122 INFO L226 Difference]: Without dead ends: 95 [2022-04-08 00:34:33,123 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-08 00:34:33,123 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 17 mSDsluCounter, 121 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 150 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-08 00:34:33,123 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 150 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-08 00:34:33,124 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states. [2022-04-08 00:34:33,143 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 95. [2022-04-08 00:34:33,143 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:34:33,144 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-08 00:34:33,144 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-08 00:34:33,144 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-08 00:34:33,146 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:33,146 INFO L93 Difference]: Finished difference Result 95 states and 111 transitions. [2022-04-08 00:34:33,146 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 111 transitions. [2022-04-08 00:34:33,146 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:33,146 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:33,146 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-08 00:34:33,147 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-08 00:34:33,149 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:34:33,149 INFO L93 Difference]: Finished difference Result 95 states and 111 transitions. [2022-04-08 00:34:33,149 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 111 transitions. [2022-04-08 00:34:33,149 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:34:33,149 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:34:33,149 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:34:33,149 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:34:33,149 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-08 00:34:33,151 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 95 states to 95 states and 111 transitions. [2022-04-08 00:34:33,151 INFO L78 Accepts]: Start accepts. Automaton has 95 states and 111 transitions. Word has length 35 [2022-04-08 00:34:33,151 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:34:33,151 INFO L478 AbstractCegarLoop]: Abstraction has 95 states and 111 transitions. [2022-04-08 00:34:33,152 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-08 00:34:33,152 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 111 transitions. [2022-04-08 00:34:33,152 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-08 00:34:33,152 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:34:33,152 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-08 00:34:33,170 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-08 00:34:33,363 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-08 00:34:33,363 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:34:33,364 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:34:33,364 INFO L85 PathProgramCache]: Analyzing trace with hash 1291395213, now seen corresponding path program 1 times [2022-04-08 00:34:33,364 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:34:33,364 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1854790998] [2022-04-08 00:34:33,364 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:33,364 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:34:33,376 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:34:33,376 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [670540688] [2022-04-08 00:34:33,376 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:34:33,376 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:34:33,376 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:34:33,377 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-08 00:34:33,378 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process