/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_unwindbound5.i -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 00:23:22,051 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 00:23:22,054 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 00:23:22,101 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 00:23:22,101 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 00:23:22,103 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 00:23:22,105 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 00:23:22,108 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 00:23:22,110 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 00:23:22,115 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 00:23:22,116 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 00:23:22,117 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 00:23:22,117 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 00:23:22,119 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 00:23:22,120 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 00:23:22,123 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 00:23:22,124 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 00:23:22,124 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 00:23:22,127 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 00:23:22,132 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 00:23:22,134 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 00:23:22,135 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 00:23:22,136 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 00:23:22,137 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 00:23:22,138 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 00:23:22,144 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 00:23:22,144 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 00:23:22,145 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 00:23:22,145 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 00:23:22,146 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 00:23:22,148 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 00:23:22,148 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 00:23:22,150 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 00:23:22,150 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 00:23:22,151 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 00:23:22,151 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 00:23:22,152 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 00:23:22,152 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 00:23:22,152 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 00:23:22,153 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 00:23:22,153 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 00:23:22,155 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 00:23:22,156 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:23:22,183 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 00:23:22,184 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 00:23:22,185 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-08 00:23:22,185 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-08 00:23:22,186 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-08 00:23:22,187 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-08 00:23:22,187 INFO L138 SettingsManager]: * Use SBE=true [2022-04-08 00:23:22,187 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 00:23:22,187 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 00:23:22,188 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 00:23:22,188 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 00:23:22,188 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 00:23:22,188 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 00:23:22,189 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 00:23:22,189 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 00:23:22,189 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 00:23:22,189 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 00:23:22,189 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 00:23:22,189 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 00:23:22,189 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 00:23:22,190 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 00:23:22,190 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-08 00:23:22,190 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-08 00:23:22,190 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-08 00:23:22,190 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-08 00:23:22,190 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 00:23:22,191 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-08 00:23:22,191 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-08 00:23:22,193 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-08 00:23:22,193 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:23:22,442 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 00:23:22,479 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 00:23:22,481 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 00:23:22,483 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 00:23:22,483 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 00:23:22,484 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/divbin_unwindbound5.i [2022-04-08 00:23:22,560 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/afddff02c/9ce258bddc114017a22e9ec2a7820787/FLAG5f9c0b196 [2022-04-08 00:23:22,927 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 00:23:22,928 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/divbin_unwindbound5.i [2022-04-08 00:23:22,934 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/afddff02c/9ce258bddc114017a22e9ec2a7820787/FLAG5f9c0b196 [2022-04-08 00:23:23,341 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/afddff02c/9ce258bddc114017a22e9ec2a7820787 [2022-04-08 00:23:23,343 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 00:23:23,345 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-08 00:23:23,348 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 00:23:23,348 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 00:23:23,352 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 00:23:23,353 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 12:23:23" (1/1) ... [2022-04-08 00:23:23,355 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1d432e60 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:23:23, skipping insertion in model container [2022-04-08 00:23:23,355 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 12:23:23" (1/1) ... [2022-04-08 00:23:23,362 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 00:23:23,378 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 00:23:23,517 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_unwindbound5.i[950,963] [2022-04-08 00:23:23,534 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 00:23:23,551 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 00:23:23,574 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_unwindbound5.i[950,963] [2022-04-08 00:23:23,581 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 00:23:23,598 INFO L208 MainTranslator]: Completed translation [2022-04-08 00:23:23,599 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:23:23 WrapperNode [2022-04-08 00:23:23,601 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 00:23:23,602 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 00:23:23,602 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 00:23:23,603 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 00:23:23,615 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:23:23" (1/1) ... [2022-04-08 00:23:23,616 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:23:23" (1/1) ... [2022-04-08 00:23:23,621 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:23:23" (1/1) ... [2022-04-08 00:23:23,622 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:23:23" (1/1) ... [2022-04-08 00:23:23,629 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:23:23" (1/1) ... [2022-04-08 00:23:23,635 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:23:23" (1/1) ... [2022-04-08 00:23:23,637 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:23:23" (1/1) ... [2022-04-08 00:23:23,638 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 00:23:23,639 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 00:23:23,639 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 00:23:23,639 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 00:23:23,641 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:23:23" (1/1) ... [2022-04-08 00:23:23,647 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 00:23:23,658 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:23:23,670 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:23:23,672 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:23:23,703 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 00:23:23,704 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 00:23:23,704 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 00:23:23,704 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 00:23:23,704 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 00:23:23,704 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 00:23:23,704 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 00:23:23,704 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 00:23:23,706 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_perror_fail [2022-04-08 00:23:23,706 INFO L130 BoogieDeclarations]: Found specification of procedure __assert [2022-04-08 00:23:23,706 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 00:23:23,706 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 00:23:23,706 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-08 00:23:23,707 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 00:23:23,707 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 00:23:23,707 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 00:23:23,707 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 00:23:23,707 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 00:23:23,707 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 00:23:23,707 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 00:23:23,707 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 00:23:23,707 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 00:23:23,765 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 00:23:23,767 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 00:23:23,949 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 00:23:23,956 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 00:23:23,956 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-08 00:23:23,957 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 12:23:23 BoogieIcfgContainer [2022-04-08 00:23:23,958 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 00:23:23,958 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-08 00:23:23,958 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-08 00:23:23,960 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-08 00:23:23,965 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 12:23:23" (1/1) ... [2022-04-08 00:23:23,968 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-08 00:23:24,025 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 08.04 12:23:24 BasicIcfg [2022-04-08 00:23:24,025 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-08 00:23:24,026 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 00:23:24,026 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 00:23:24,029 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 00:23:24,030 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 12:23:23" (1/4) ... [2022-04-08 00:23:24,030 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1c4be140 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 12:23:24, skipping insertion in model container [2022-04-08 00:23:24,030 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:23:23" (2/4) ... [2022-04-08 00:23:24,031 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1c4be140 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 12:23:24, skipping insertion in model container [2022-04-08 00:23:24,031 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 12:23:23" (3/4) ... [2022-04-08 00:23:24,031 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1c4be140 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 12:23:24, skipping insertion in model container [2022-04-08 00:23:24,031 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 08.04 12:23:24" (4/4) ... [2022-04-08 00:23:24,032 INFO L111 eAbstractionObserver]: Analyzing ICFG divbin_unwindbound5.iqvasr [2022-04-08 00:23:24,050 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-08 00:23:24,051 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 00:23:24,113 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 00:23:24,126 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:23:24,126 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 00:23:24,153 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:23:24,158 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-08 00:23:24,158 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:23:24,160 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:23:24,161 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:23:24,167 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:23:24,167 INFO L85 PathProgramCache]: Analyzing trace with hash 35225450, now seen corresponding path program 1 times [2022-04-08 00:23:24,175 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:23:24,176 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1415790667] [2022-04-08 00:23:24,177 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:24,177 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:23:24,300 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:24,393 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 00:23:24,397 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:24,409 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:23:24,410 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:23:24,410 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:23:24,411 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 00:23:24,412 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:24,418 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:23:24,419 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:23:24,419 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:23:24,419 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:23:24,420 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-08 00:23:24,422 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:24,427 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:23:24,428 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:23:24,429 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:23:24,429 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:23:24,430 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:23:24,431 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:23:24,431 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:23:24,432 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:23:24,432 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:23:24,432 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:23:24,432 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:23:24,433 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:23:24,433 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:23:24,434 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:23:24,434 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:23:24,434 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:23:24,435 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:23:24,435 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:23:24,435 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:23:24,436 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:23:24,436 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:23:24,436 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:23:24,436 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:23:24,437 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:23:24,437 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:23:24,437 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:23:24,438 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:23:24,438 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:23:24,442 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:23:24,442 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1415790667] [2022-04-08 00:23:24,443 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1415790667] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 00:23:24,443 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 00:23:24,443 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 00:23:24,445 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [959221612] [2022-04-08 00:23:24,445 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 00:23:24,450 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:23:24,452 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:23:24,455 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:23:24,489 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:23:24,490 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 00:23:24,490 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:23:24,516 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 00:23:24,517 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 00:23:24,521 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:23:24,713 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:24,713 INFO L93 Difference]: Finished difference Result 60 states and 84 transitions. [2022-04-08 00:23:24,713 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 00:23:24,714 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:23:24,714 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:23:24,715 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:23:24,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 84 transitions. [2022-04-08 00:23:24,728 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:23:24,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 84 transitions. [2022-04-08 00:23:24,739 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 84 transitions. [2022-04-08 00:23:24,864 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:23:24,877 INFO L225 Difference]: With dead ends: 60 [2022-04-08 00:23:24,878 INFO L226 Difference]: Without dead ends: 29 [2022-04-08 00:23:24,884 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:23:24,889 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:23:24,896 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:23:24,911 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-08 00:23:24,951 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 28. [2022-04-08 00:23:24,951 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:23:24,953 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:23:24,954 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:23:24,954 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:23:24,959 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:24,960 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-08 00:23:24,960 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-08 00:23:24,960 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:24,960 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:24,961 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:23:24,962 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:23:24,966 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:24,966 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-08 00:23:24,966 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-08 00:23:24,967 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:24,967 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:24,967 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:23:24,967 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:23:24,969 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:23:24,973 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 34 transitions. [2022-04-08 00:23:24,975 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 34 transitions. Word has length 23 [2022-04-08 00:23:24,975 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:23:24,976 INFO L478 AbstractCegarLoop]: Abstraction has 28 states and 34 transitions. [2022-04-08 00:23:24,977 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:23:24,978 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-08 00:23:24,979 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-08 00:23:24,979 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:23:24,980 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:23:24,980 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 00:23:24,980 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:23:24,982 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:23:24,982 INFO L85 PathProgramCache]: Analyzing trace with hash 106385839, now seen corresponding path program 1 times [2022-04-08 00:23:24,982 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:23:24,982 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1594981453] [2022-04-08 00:23:24,983 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:24,983 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:23:25,028 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:23:25,029 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1919366540] [2022-04-08 00:23:25,029 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:25,029 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:23:25,029 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:23:25,033 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:23:25,034 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:23:25,090 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:25,092 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 00:23:25,105 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:25,109 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:23:25,324 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:23:25,325 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:23:25,326 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:23:25,326 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:23:25,327 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:23:25,327 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:23:25,328 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:23:25,329 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:23:25,329 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:23:25,330 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:23:25,330 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:23:25,331 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:23:25,332 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:23:25,332 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:23:25,333 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:23:25,333 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:23:25,334 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:23:25,334 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:23:25,335 INFO L290 TraceCheckUtils]: 18: Hoare triple {284#(<= |main_#t~post3| 0)} [109] L36-1-->L45-2: Formula: (not (< |v_main_#t~post3_3| 5)) InVars {main_#t~post3=|v_main_#t~post3_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {228#false} is VALID [2022-04-08 00:23:25,335 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:23:25,336 INFO L290 TraceCheckUtils]: 20: Hoare triple {228#false} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 5)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {228#false} is VALID [2022-04-08 00:23:25,336 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:23:25,336 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:23:25,336 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:23:25,337 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:23:25,337 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:23:25,337 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 00:23:25,337 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:23:25,338 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1594981453] [2022-04-08 00:23:25,338 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:23:25,338 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1919366540] [2022-04-08 00:23:25,338 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1919366540] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 00:23:25,338 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 00:23:25,338 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 00:23:25,339 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1349159198] [2022-04-08 00:23:25,339 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 00:23:25,340 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:23:25,341 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:23:25,341 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:23:25,361 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:23:25,361 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 00:23:25,361 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:23:25,362 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 00:23:25,362 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 00:23:25,362 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:23:25,430 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:25,430 INFO L93 Difference]: Finished difference Result 42 states and 52 transitions. [2022-04-08 00:23:25,430 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 00:23:25,431 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:23:25,431 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:23:25,431 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:23:25,433 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 52 transitions. [2022-04-08 00:23:25,434 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:23:25,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 52 transitions. [2022-04-08 00:23:25,436 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 52 transitions. [2022-04-08 00:23:25,480 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:23:25,481 INFO L225 Difference]: With dead ends: 42 [2022-04-08 00:23:25,482 INFO L226 Difference]: Without dead ends: 30 [2022-04-08 00:23:25,482 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:23:25,483 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:23:25,484 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:23:25,485 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2022-04-08 00:23:25,492 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 30. [2022-04-08 00:23:25,492 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:23:25,493 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:23:25,493 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:23:25,493 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:23:25,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:25,496 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2022-04-08 00:23:25,496 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2022-04-08 00:23:25,496 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:25,496 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:25,497 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:23:25,497 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:23:25,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:25,499 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2022-04-08 00:23:25,499 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2022-04-08 00:23:25,500 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:25,500 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:25,500 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:23:25,500 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:23:25,501 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:23:25,502 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 36 transitions. [2022-04-08 00:23:25,503 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 36 transitions. Word has length 25 [2022-04-08 00:23:25,503 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:23:25,503 INFO L478 AbstractCegarLoop]: Abstraction has 30 states and 36 transitions. [2022-04-08 00:23:25,503 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:23:25,503 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2022-04-08 00:23:25,504 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-04-08 00:23:25,504 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:23:25,504 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:23:25,537 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:23:25,719 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:23:25,720 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:23:25,720 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:23:25,720 INFO L85 PathProgramCache]: Analyzing trace with hash 1662084126, now seen corresponding path program 1 times [2022-04-08 00:23:25,720 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:23:25,721 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1378980484] [2022-04-08 00:23:25,721 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:25,721 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:23:25,750 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:23:25,750 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [258396459] [2022-04-08 00:23:25,750 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:25,750 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:23:25,751 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:23:25,752 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:23:25,754 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:23:25,803 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:25,804 INFO L263 TraceCheckSpWp]: Trace formula consists of 91 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 00:23:25,818 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:25,819 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:23:26,058 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:23:26,059 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:23:26,060 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:23:26,061 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:23:26,061 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:23:26,062 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:23:26,062 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:23:26,063 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:23:26,063 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:23:26,064 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:23:26,065 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:23:26,065 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:23:26,066 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:23:26,066 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:23:26,067 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:23:26,068 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:23:26,068 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:23:26,069 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:23:26,070 INFO L290 TraceCheckUtils]: 18: Hoare triple {521#(<= ~counter~0 1)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 5) 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:23:26,070 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:23:26,071 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:23:26,071 INFO L290 TraceCheckUtils]: 21: Hoare triple {531#(<= |main_#t~post4| 1)} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 5)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {465#false} is VALID [2022-04-08 00:23:26,071 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:23:26,072 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:23:26,072 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:23:26,072 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:23:26,072 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:23:26,072 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 00:23:26,073 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:23:26,073 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1378980484] [2022-04-08 00:23:26,073 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:23:26,073 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [258396459] [2022-04-08 00:23:26,073 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [258396459] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 00:23:26,073 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 00:23:26,073 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 00:23:26,074 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [937413187] [2022-04-08 00:23:26,074 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 00:23:26,074 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:23:26,075 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:23:26,075 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:23:26,099 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:23:26,099 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 00:23:26,100 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:23:26,100 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 00:23:26,100 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 00:23:26,101 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:23:26,228 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:26,228 INFO L93 Difference]: Finished difference Result 41 states and 48 transitions. [2022-04-08 00:23:26,228 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 00:23:26,229 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:23:26,229 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:23:26,229 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:23:26,231 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2022-04-08 00:23:26,231 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:23:26,233 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2022-04-08 00:23:26,233 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 48 transitions. [2022-04-08 00:23:26,281 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:23:26,285 INFO L225 Difference]: With dead ends: 41 [2022-04-08 00:23:26,285 INFO L226 Difference]: Without dead ends: 34 [2022-04-08 00:23:26,286 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:23:26,288 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:23:26,290 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:23:26,292 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-08 00:23:26,302 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2022-04-08 00:23:26,302 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:23:26,302 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:23:26,304 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:23:26,305 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:23:26,308 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:26,308 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-08 00:23:26,309 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2022-04-08 00:23:26,312 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:26,312 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:26,312 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:23:26,313 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:23:26,322 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:26,322 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-08 00:23:26,322 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2022-04-08 00:23:26,323 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:26,323 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:26,323 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:23:26,323 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:23:26,324 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:23:26,326 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 40 transitions. [2022-04-08 00:23:26,326 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 40 transitions. Word has length 26 [2022-04-08 00:23:26,327 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:23:26,327 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 40 transitions. [2022-04-08 00:23:26,327 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:23:26,327 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 40 transitions. [2022-04-08 00:23:26,328 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-04-08 00:23:26,328 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:23:26,328 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:23:26,358 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:23:26,547 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:23:26,548 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:23:26,548 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:23:26,548 INFO L85 PathProgramCache]: Analyzing trace with hash 1663216184, now seen corresponding path program 1 times [2022-04-08 00:23:26,549 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:23:26,549 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [266226260] [2022-04-08 00:23:26,549 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:26,549 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:23:26,566 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:23:26,566 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2112183915] [2022-04-08 00:23:26,566 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:26,566 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:23:26,566 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:23:26,567 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:23:26,585 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:23:26,622 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:26,623 INFO L263 TraceCheckSpWp]: Trace formula consists of 91 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 00:23:26,643 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:26,646 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:23:27,673 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:23:27,673 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:23:27,673 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:23:27,674 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:23:27,674 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:23:27,674 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:23:27,674 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:23:27,675 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:23:27,675 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:23:27,675 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:23:27,676 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:23:27,676 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:23:27,676 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:23:27,677 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:23:27,677 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:23:27,678 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:23:27,679 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:23:27,679 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:23:27,682 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| 5) 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:23:27,683 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:23:27,683 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:23:27,684 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| 5) 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:23:27,689 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:23:27,689 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:23:27,690 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:23:27,690 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:23:27,690 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:23:27,691 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 00:23:28,204 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:23:28,205 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:23:28,205 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:23:28,206 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:23:28,206 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| 5) 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:23:28,207 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:23:28,213 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:23:28,214 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| 5) 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:23:28,214 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:23:28,215 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:23:28,215 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:23:28,215 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:23:28,216 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:23:28,216 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:23:28,216 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:23:28,216 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:23:28,216 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:23:28,217 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:23:28,217 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:23:28,217 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:23:28,217 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:23:28,217 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:23:28,218 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:23:28,218 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:23:28,218 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:23:28,218 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:23:28,218 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:23:28,219 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:23:28,219 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [266226260] [2022-04-08 00:23:28,219 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:23:28,219 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2112183915] [2022-04-08 00:23:28,219 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2112183915] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 00:23:28,219 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 00:23:28,219 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-08 00:23:28,219 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2041190312] [2022-04-08 00:23:28,220 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 00:23:28,220 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:23:28,220 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:23:28,220 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:23:28,242 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:23:28,243 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 00:23:28,243 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:23:28,244 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 00:23:28,244 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-08 00:23:28,244 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:23:30,503 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:23:32,686 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:23:34,780 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:23:37,040 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:37,040 INFO L93 Difference]: Finished difference Result 42 states and 50 transitions. [2022-04-08 00:23:37,040 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 00:23:37,040 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:23:37,041 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:23:37,041 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:23:37,042 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 50 transitions. [2022-04-08 00:23:37,043 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:23:37,044 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 50 transitions. [2022-04-08 00:23:37,044 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 50 transitions. [2022-04-08 00:23:37,102 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:23:37,103 INFO L225 Difference]: With dead ends: 42 [2022-04-08 00:23:37,103 INFO L226 Difference]: Without dead ends: 39 [2022-04-08 00:23:37,104 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:23:37,104 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 11 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 49 mSolverCounterSat, 2 mSolverCounterUnsat, 3 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 126 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 49 IncrementalHoareTripleChecker+Invalid, 3 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 6.2s IncrementalHoareTripleChecker+Time [2022-04-08 00:23:37,105 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 126 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 49 Invalid, 3 Unknown, 0 Unchecked, 6.2s Time] [2022-04-08 00:23:37,105 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2022-04-08 00:23:37,116 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 39. [2022-04-08 00:23:37,117 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:23:37,118 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:23:37,118 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:23:37,119 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:23:37,122 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:37,122 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-08 00:23:37,123 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-08 00:23:37,126 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:37,126 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:37,127 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:23:37,127 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:23:37,132 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:37,132 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-08 00:23:37,132 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-08 00:23:37,133 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:37,133 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:37,133 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:23:37,133 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:23:37,133 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:23:37,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 46 transitions. [2022-04-08 00:23:37,135 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 46 transitions. Word has length 26 [2022-04-08 00:23:37,135 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:23:37,135 INFO L478 AbstractCegarLoop]: Abstraction has 39 states and 46 transitions. [2022-04-08 00:23:37,135 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:23:37,136 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-08 00:23:37,136 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 00:23:37,136 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:23:37,136 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:23:37,164 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:23:37,337 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:23:37,337 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:23:37,338 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:23:37,338 INFO L85 PathProgramCache]: Analyzing trace with hash -1664227005, now seen corresponding path program 1 times [2022-04-08 00:23:37,338 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:23:37,338 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [985331019] [2022-04-08 00:23:37,338 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:37,338 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:23:37,368 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:23:37,368 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [768990399] [2022-04-08 00:23:37,368 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:37,369 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:23:37,369 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:23:37,375 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:23:37,390 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:23:37,418 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:37,419 INFO L263 TraceCheckSpWp]: Trace formula consists of 98 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 00:23:37,439 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:37,441 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:23:37,622 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:23:37,623 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:23:37,623 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:23:37,624 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:23:37,624 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:23:37,625 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:23:37,626 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:23:37,626 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:23:37,626 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:23:37,627 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:23:37,628 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:23:37,628 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:23:37,629 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:23:37,629 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:23:37,630 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:23:37,630 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:23:37,631 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:23:37,631 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:23:37,632 INFO L290 TraceCheckUtils]: 18: Hoare triple {1128#(<= ~counter~0 1)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 5) 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:23:37,632 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:23:37,633 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:23:37,633 INFO L290 TraceCheckUtils]: 21: Hoare triple {1138#(<= |main_#t~post3| 1)} [109] L36-1-->L45-2: Formula: (not (< |v_main_#t~post3_3| 5)) InVars {main_#t~post3=|v_main_#t~post3_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1072#false} is VALID [2022-04-08 00:23:37,634 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:23:37,634 INFO L290 TraceCheckUtils]: 23: Hoare triple {1072#false} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 5)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1072#false} is VALID [2022-04-08 00:23:37,634 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:23:37,634 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:23:37,634 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:23:37,634 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:23:37,635 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:23:37,635 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 00:23:37,861 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:23:37,861 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:23:37,861 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:23:37,862 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:23:37,862 INFO L290 TraceCheckUtils]: 23: Hoare triple {1072#false} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 5)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1072#false} is VALID [2022-04-08 00:23:37,862 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:23:37,862 INFO L290 TraceCheckUtils]: 21: Hoare triple {1178#(< |main_#t~post3| 5)} [109] L36-1-->L45-2: Formula: (not (< |v_main_#t~post3_3| 5)) InVars {main_#t~post3=|v_main_#t~post3_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1072#false} is VALID [2022-04-08 00:23:37,863 INFO L290 TraceCheckUtils]: 20: Hoare triple {1182#(< ~counter~0 5)} [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| 5)} is VALID [2022-04-08 00:23:37,863 INFO L290 TraceCheckUtils]: 19: Hoare triple {1182#(< ~counter~0 5)} [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 5)} is VALID [2022-04-08 00:23:37,864 INFO L290 TraceCheckUtils]: 18: Hoare triple {1182#(< ~counter~0 5)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 5) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1182#(< ~counter~0 5)} is VALID [2022-04-08 00:23:37,864 INFO L290 TraceCheckUtils]: 17: Hoare triple {1192#(< ~counter~0 4)} [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 5)} is VALID [2022-04-08 00:23:37,865 INFO L290 TraceCheckUtils]: 16: Hoare triple {1192#(< ~counter~0 4)} [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 4)} is VALID [2022-04-08 00:23:37,866 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1071#true} {1192#(< ~counter~0 4)} [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 4)} is VALID [2022-04-08 00:23:37,866 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:23:37,866 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:23:37,866 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:23:37,866 INFO L272 TraceCheckUtils]: 11: Hoare triple {1192#(< ~counter~0 4)} [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:23:37,867 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1071#true} {1192#(< ~counter~0 4)} [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 4)} is VALID [2022-04-08 00:23:37,867 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:23:37,867 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:23:37,867 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:23:37,867 INFO L272 TraceCheckUtils]: 6: Hoare triple {1192#(< ~counter~0 4)} [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:23:37,868 INFO L290 TraceCheckUtils]: 5: Hoare triple {1192#(< ~counter~0 4)} [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 4)} is VALID [2022-04-08 00:23:37,868 INFO L272 TraceCheckUtils]: 4: Hoare triple {1192#(< ~counter~0 4)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1192#(< ~counter~0 4)} is VALID [2022-04-08 00:23:37,869 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1192#(< ~counter~0 4)} {1071#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1192#(< ~counter~0 4)} is VALID [2022-04-08 00:23:37,869 INFO L290 TraceCheckUtils]: 2: Hoare triple {1192#(< ~counter~0 4)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1192#(< ~counter~0 4)} is VALID [2022-04-08 00:23:37,870 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 4)} is VALID [2022-04-08 00:23:37,870 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:23:37,870 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:23:37,870 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:23:37,871 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [985331019] [2022-04-08 00:23:37,871 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:23:37,871 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [768990399] [2022-04-08 00:23:37,871 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [768990399] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 00:23:37,871 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 00:23:37,871 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-08 00:23:37,871 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [372269001] [2022-04-08 00:23:37,871 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 00:23:37,872 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:23:37,872 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:23:37,872 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:23:37,911 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:23:37,911 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 00:23:37,911 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:23:37,912 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 00:23:37,912 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-08 00:23:37,912 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:23:38,209 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:38,209 INFO L93 Difference]: Finished difference Result 73 states and 92 transitions. [2022-04-08 00:23:38,209 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 00:23:38,209 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:23:38,210 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:23:38,210 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:23:38,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 92 transitions. [2022-04-08 00:23:38,212 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:23:38,214 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 92 transitions. [2022-04-08 00:23:38,214 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 92 transitions. [2022-04-08 00:23:38,300 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:23:38,302 INFO L225 Difference]: With dead ends: 73 [2022-04-08 00:23:38,302 INFO L226 Difference]: Without dead ends: 61 [2022-04-08 00:23:38,303 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 49 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-04-08 00:23:38,303 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.1s IncrementalHoareTripleChecker+Time [2022-04-08 00:23:38,304 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.1s Time] [2022-04-08 00:23:38,304 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states. [2022-04-08 00:23:38,317 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 47. [2022-04-08 00:23:38,317 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:23:38,317 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:23:38,318 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:23:38,318 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:23:38,320 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:38,320 INFO L93 Difference]: Finished difference Result 61 states and 74 transitions. [2022-04-08 00:23:38,320 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 74 transitions. [2022-04-08 00:23:38,321 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:38,321 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:38,321 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:23:38,321 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:23:38,324 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:38,324 INFO L93 Difference]: Finished difference Result 61 states and 74 transitions. [2022-04-08 00:23:38,324 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 74 transitions. [2022-04-08 00:23:38,324 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:38,324 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:38,324 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:23:38,325 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:23:38,325 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:23:38,326 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 56 transitions. [2022-04-08 00:23:38,327 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 56 transitions. Word has length 28 [2022-04-08 00:23:38,327 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:23:38,327 INFO L478 AbstractCegarLoop]: Abstraction has 47 states and 56 transitions. [2022-04-08 00:23:38,327 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:23:38,327 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 56 transitions. [2022-04-08 00:23:38,328 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-08 00:23:38,328 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:23:38,328 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:23:38,358 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:23:38,551 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:23:38,551 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:23:38,552 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:23:38,552 INFO L85 PathProgramCache]: Analyzing trace with hash -1687306486, now seen corresponding path program 1 times [2022-04-08 00:23:38,552 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:23:38,552 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [999317170] [2022-04-08 00:23:38,552 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:38,552 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:23:38,576 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:23:38,576 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [140390179] [2022-04-08 00:23:38,576 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:38,576 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:23:38,576 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:23:38,581 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:23:38,611 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:23:38,633 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:38,634 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 00:23:38,642 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:38,644 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:23:38,857 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:23:38,858 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:23:38,859 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:23:38,859 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:23:38,860 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:23:38,860 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:23:38,861 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:23:38,861 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:23:38,862 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:23:38,862 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:23:38,863 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:23:38,863 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:23:38,864 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:23:38,864 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:23:38,864 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:23:38,865 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:23:38,866 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:23:38,866 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:23:38,867 INFO L290 TraceCheckUtils]: 18: Hoare triple {1591#(<= ~counter~0 1)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 5) 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:23:38,867 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:23:38,868 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:23:38,868 INFO L290 TraceCheckUtils]: 21: Hoare triple {1601#(<= ~counter~0 2)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 5) 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:23:38,868 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:23:38,869 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:23:38,869 INFO L290 TraceCheckUtils]: 24: Hoare triple {1611#(<= |main_#t~post4| 2)} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 5)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1535#false} is VALID [2022-04-08 00:23:38,870 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:23:38,870 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:23:38,870 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:23:38,870 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:23:38,870 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:23:38,870 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 00:23:39,117 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:23:39,117 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:23:39,117 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:23:39,118 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:23:39,118 INFO L290 TraceCheckUtils]: 24: Hoare triple {1639#(< |main_#t~post4| 5)} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 5)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1535#false} is VALID [2022-04-08 00:23:39,119 INFO L290 TraceCheckUtils]: 23: Hoare triple {1643#(< ~counter~0 5)} [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| 5)} is VALID [2022-04-08 00:23:39,120 INFO L290 TraceCheckUtils]: 22: Hoare triple {1643#(< ~counter~0 5)} [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 5)} is VALID [2022-04-08 00:23:39,120 INFO L290 TraceCheckUtils]: 21: Hoare triple {1643#(< ~counter~0 5)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 5) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1643#(< ~counter~0 5)} is VALID [2022-04-08 00:23:39,121 INFO L290 TraceCheckUtils]: 20: Hoare triple {1653#(< ~counter~0 4)} [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 5)} is VALID [2022-04-08 00:23:39,122 INFO L290 TraceCheckUtils]: 19: Hoare triple {1653#(< ~counter~0 4)} [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 4)} is VALID [2022-04-08 00:23:39,122 INFO L290 TraceCheckUtils]: 18: Hoare triple {1653#(< ~counter~0 4)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 5) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1653#(< ~counter~0 4)} is VALID [2022-04-08 00:23:39,123 INFO L290 TraceCheckUtils]: 17: Hoare triple {1601#(<= ~counter~0 2)} [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 4)} is VALID [2022-04-08 00:23:39,123 INFO L290 TraceCheckUtils]: 16: Hoare triple {1601#(<= ~counter~0 2)} [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] {1601#(<= ~counter~0 2)} is VALID [2022-04-08 00:23:39,124 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1534#true} {1601#(<= ~counter~0 2)} [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] {1601#(<= ~counter~0 2)} is VALID [2022-04-08 00:23:39,124 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:23:39,124 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:23:39,124 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:23:39,124 INFO L272 TraceCheckUtils]: 11: Hoare triple {1601#(<= ~counter~0 2)} [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:23:39,125 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1534#true} {1601#(<= ~counter~0 2)} [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] {1601#(<= ~counter~0 2)} is VALID [2022-04-08 00:23:39,125 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:23:39,125 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:23:39,125 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:23:39,125 INFO L272 TraceCheckUtils]: 6: Hoare triple {1601#(<= ~counter~0 2)} [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:23:39,126 INFO L290 TraceCheckUtils]: 5: Hoare triple {1601#(<= ~counter~0 2)} [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] {1601#(<= ~counter~0 2)} is VALID [2022-04-08 00:23:39,126 INFO L272 TraceCheckUtils]: 4: Hoare triple {1601#(<= ~counter~0 2)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1601#(<= ~counter~0 2)} is VALID [2022-04-08 00:23:39,127 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1601#(<= ~counter~0 2)} {1534#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1601#(<= ~counter~0 2)} is VALID [2022-04-08 00:23:39,127 INFO L290 TraceCheckUtils]: 2: Hoare triple {1601#(<= ~counter~0 2)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1601#(<= ~counter~0 2)} is VALID [2022-04-08 00:23:39,131 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] {1601#(<= ~counter~0 2)} is VALID [2022-04-08 00:23:39,132 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:23:39,133 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:23:39,135 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:23:39,135 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [999317170] [2022-04-08 00:23:39,135 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:23:39,135 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [140390179] [2022-04-08 00:23:39,135 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [140390179] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 00:23:39,135 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 00:23:39,136 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 9 [2022-04-08 00:23:39,136 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1494327779] [2022-04-08 00:23:39,136 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 00:23:39,136 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 9 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:23:39,138 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:23:39,139 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 9 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:23:39,175 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:23:39,175 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 00:23:39,176 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:23:39,176 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 00:23:39,176 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-08 00:23:39,176 INFO L87 Difference]: Start difference. First operand 47 states and 56 transitions. Second operand has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 9 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:23:39,565 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:39,566 INFO L93 Difference]: Finished difference Result 83 states and 100 transitions. [2022-04-08 00:23:39,566 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 00:23:39,566 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 9 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:23:39,566 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:23:39,567 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 9 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:23:39,569 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 100 transitions. [2022-04-08 00:23:39,569 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 9 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:23:39,572 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 100 transitions. [2022-04-08 00:23:39,572 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 100 transitions. [2022-04-08 00:23:39,661 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 00:23:39,663 INFO L225 Difference]: With dead ends: 83 [2022-04-08 00:23:39,664 INFO L226 Difference]: Without dead ends: 76 [2022-04-08 00:23:39,664 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 49 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=46, Invalid=86, Unknown=0, NotChecked=0, Total=132 [2022-04-08 00:23:39,665 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 60 mSDsluCounter, 130 mSDsCounter, 0 mSdLazyCounter, 37 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 60 SdHoareTripleChecker+Valid, 164 SdHoareTripleChecker+Invalid, 62 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 37 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 00:23:39,665 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [60 Valid, 164 Invalid, 62 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 37 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 00:23:39,666 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2022-04-08 00:23:39,684 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 71. [2022-04-08 00:23:39,684 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:23:39,684 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand has 71 states, 53 states have (on average 1.320754716981132) internal successors, (70), 56 states have internal predecessors, (70), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 00:23:39,685 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand has 71 states, 53 states have (on average 1.320754716981132) internal successors, (70), 56 states have internal predecessors, (70), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 00:23:39,685 INFO L87 Difference]: Start difference. First operand 76 states. Second operand has 71 states, 53 states have (on average 1.320754716981132) internal successors, (70), 56 states have internal predecessors, (70), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 00:23:39,687 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:39,688 INFO L93 Difference]: Finished difference Result 76 states and 91 transitions. [2022-04-08 00:23:39,688 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 91 transitions. [2022-04-08 00:23:39,688 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:39,688 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:39,688 INFO L74 IsIncluded]: Start isIncluded. First operand has 71 states, 53 states have (on average 1.320754716981132) internal successors, (70), 56 states have internal predecessors, (70), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 76 states. [2022-04-08 00:23:39,689 INFO L87 Difference]: Start difference. First operand has 71 states, 53 states have (on average 1.320754716981132) internal successors, (70), 56 states have internal predecessors, (70), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 76 states. [2022-04-08 00:23:39,691 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:39,691 INFO L93 Difference]: Finished difference Result 76 states and 91 transitions. [2022-04-08 00:23:39,691 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 91 transitions. [2022-04-08 00:23:39,692 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:39,692 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:39,692 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:23:39,692 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:23:39,692 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71 states, 53 states have (on average 1.320754716981132) internal successors, (70), 56 states have internal predecessors, (70), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 00:23:39,695 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 88 transitions. [2022-04-08 00:23:39,695 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 88 transitions. Word has length 29 [2022-04-08 00:23:39,695 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:23:39,695 INFO L478 AbstractCegarLoop]: Abstraction has 71 states and 88 transitions. [2022-04-08 00:23:39,695 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 9 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:23:39,696 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 88 transitions. [2022-04-08 00:23:39,696 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-08 00:23:39,696 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:23:39,696 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:23:39,727 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-08 00:23:39,911 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:23:39,911 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:23:39,912 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:23:39,912 INFO L85 PathProgramCache]: Analyzing trace with hash -1686174428, now seen corresponding path program 1 times [2022-04-08 00:23:39,912 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:23:39,912 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1800825850] [2022-04-08 00:23:39,912 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:39,912 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:23:39,928 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:23:39,928 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [697939667] [2022-04-08 00:23:39,929 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:39,929 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:23:39,929 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:23:39,934 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 00:23:39,935 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-08 00:23:39,980 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:39,981 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 00:23:39,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:39,993 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:23:40,699 INFO L272 TraceCheckUtils]: 0: Hoare triple {2077#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2077#true} is VALID [2022-04-08 00:23:40,700 INFO L290 TraceCheckUtils]: 1: Hoare triple {2077#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] {2077#true} is VALID [2022-04-08 00:23:40,700 INFO L290 TraceCheckUtils]: 2: Hoare triple {2077#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2077#true} is VALID [2022-04-08 00:23:40,700 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2077#true} {2077#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2077#true} is VALID [2022-04-08 00:23:40,700 INFO L272 TraceCheckUtils]: 4: Hoare triple {2077#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2077#true} is VALID [2022-04-08 00:23:40,700 INFO L290 TraceCheckUtils]: 5: Hoare triple {2077#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] {2077#true} is VALID [2022-04-08 00:23:40,700 INFO L272 TraceCheckUtils]: 6: Hoare triple {2077#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] {2077#true} is VALID [2022-04-08 00:23:40,701 INFO L290 TraceCheckUtils]: 7: Hoare triple {2077#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] {2077#true} is VALID [2022-04-08 00:23:40,701 INFO L290 TraceCheckUtils]: 8: Hoare triple {2077#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[] {2077#true} is VALID [2022-04-08 00:23:40,701 INFO L290 TraceCheckUtils]: 9: Hoare triple {2077#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2077#true} is VALID [2022-04-08 00:23:40,701 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2077#true} {2077#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] {2077#true} is VALID [2022-04-08 00:23:40,701 INFO L272 TraceCheckUtils]: 11: Hoare triple {2077#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] {2077#true} is VALID [2022-04-08 00:23:40,702 INFO L290 TraceCheckUtils]: 12: Hoare triple {2077#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] {2118#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 00:23:40,702 INFO L290 TraceCheckUtils]: 13: Hoare triple {2118#(= 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[] {2122#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 00:23:40,703 INFO L290 TraceCheckUtils]: 14: Hoare triple {2122#(not (= |assume_abort_if_not_#in~cond| 0))} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2122#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 00:23:40,703 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2122#(not (= |assume_abort_if_not_#in~cond| 0))} {2077#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] {2129#(<= 1 (mod main_~B~0 4294967296))} is VALID [2022-04-08 00:23:40,704 INFO L290 TraceCheckUtils]: 16: Hoare triple {2129#(<= 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] {2133#(and (= main_~A~0 main_~r~0) (<= 1 (mod main_~b~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-08 00:23:40,705 INFO L290 TraceCheckUtils]: 17: Hoare triple {2133#(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] {2133#(and (= main_~A~0 main_~r~0) (<= 1 (mod main_~b~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-08 00:23:40,705 INFO L290 TraceCheckUtils]: 18: Hoare triple {2133#(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| 5) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {2133#(and (= main_~A~0 main_~r~0) (<= 1 (mod main_~b~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-08 00:23:40,706 INFO L290 TraceCheckUtils]: 19: Hoare triple {2133#(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] {2143#(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:23:40,707 INFO L290 TraceCheckUtils]: 20: Hoare triple {2143#(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] {2143#(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:23:40,707 INFO L290 TraceCheckUtils]: 21: Hoare triple {2143#(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| 5) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {2143#(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:23:40,708 INFO L290 TraceCheckUtils]: 22: Hoare triple {2143#(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[] {2143#(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:23:40,709 INFO L290 TraceCheckUtils]: 23: Hoare triple {2143#(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] {2143#(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:23:40,709 INFO L290 TraceCheckUtils]: 24: Hoare triple {2143#(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| 5) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {2143#(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:23:40,710 INFO L272 TraceCheckUtils]: 25: Hoare triple {2143#(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] {2162#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 00:23:40,711 INFO L290 TraceCheckUtils]: 26: Hoare triple {2162#(<= 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] {2166#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 00:23:40,711 INFO L290 TraceCheckUtils]: 27: Hoare triple {2166#(<= 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[] {2078#false} is VALID [2022-04-08 00:23:40,711 INFO L290 TraceCheckUtils]: 28: Hoare triple {2078#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2078#false} is VALID [2022-04-08 00:23:40,712 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:23:40,712 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 00:23:41,540 INFO L290 TraceCheckUtils]: 28: Hoare triple {2078#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2078#false} is VALID [2022-04-08 00:23:41,541 INFO L290 TraceCheckUtils]: 27: Hoare triple {2166#(<= 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[] {2078#false} is VALID [2022-04-08 00:23:41,541 INFO L290 TraceCheckUtils]: 26: Hoare triple {2162#(<= 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] {2166#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 00:23:41,543 INFO L272 TraceCheckUtils]: 25: Hoare triple {2182#(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] {2162#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 00:23:41,544 INFO L290 TraceCheckUtils]: 24: Hoare triple {2182#(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| 5) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {2182#(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:23:41,544 INFO L290 TraceCheckUtils]: 23: Hoare triple {2182#(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] {2182#(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:23:41,545 INFO L290 TraceCheckUtils]: 22: Hoare triple {2182#(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[] {2182#(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:23:41,545 INFO L290 TraceCheckUtils]: 21: Hoare triple {2182#(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| 5) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {2182#(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:23:41,546 INFO L290 TraceCheckUtils]: 20: Hoare triple {2182#(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] {2182#(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:23:41,547 INFO L290 TraceCheckUtils]: 19: Hoare triple {2201#(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] {2182#(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:23:41,548 INFO L290 TraceCheckUtils]: 18: Hoare triple {2201#(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| 5) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {2201#(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:23:41,549 INFO L290 TraceCheckUtils]: 17: Hoare triple {2201#(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] {2201#(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:23:41,549 INFO L290 TraceCheckUtils]: 16: Hoare triple {2077#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] {2201#(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:23:41,549 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2077#true} {2077#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] {2077#true} is VALID [2022-04-08 00:23:41,550 INFO L290 TraceCheckUtils]: 14: Hoare triple {2077#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2077#true} is VALID [2022-04-08 00:23:41,550 INFO L290 TraceCheckUtils]: 13: Hoare triple {2077#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[] {2077#true} is VALID [2022-04-08 00:23:41,550 INFO L290 TraceCheckUtils]: 12: Hoare triple {2077#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] {2077#true} is VALID [2022-04-08 00:23:41,550 INFO L272 TraceCheckUtils]: 11: Hoare triple {2077#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] {2077#true} is VALID [2022-04-08 00:23:41,550 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2077#true} {2077#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] {2077#true} is VALID [2022-04-08 00:23:41,550 INFO L290 TraceCheckUtils]: 9: Hoare triple {2077#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2077#true} is VALID [2022-04-08 00:23:41,550 INFO L290 TraceCheckUtils]: 8: Hoare triple {2077#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[] {2077#true} is VALID [2022-04-08 00:23:41,550 INFO L290 TraceCheckUtils]: 7: Hoare triple {2077#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] {2077#true} is VALID [2022-04-08 00:23:41,550 INFO L272 TraceCheckUtils]: 6: Hoare triple {2077#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] {2077#true} is VALID [2022-04-08 00:23:41,551 INFO L290 TraceCheckUtils]: 5: Hoare triple {2077#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] {2077#true} is VALID [2022-04-08 00:23:41,551 INFO L272 TraceCheckUtils]: 4: Hoare triple {2077#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2077#true} is VALID [2022-04-08 00:23:41,552 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2077#true} {2077#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2077#true} is VALID [2022-04-08 00:23:41,552 INFO L290 TraceCheckUtils]: 2: Hoare triple {2077#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2077#true} is VALID [2022-04-08 00:23:41,552 INFO L290 TraceCheckUtils]: 1: Hoare triple {2077#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] {2077#true} is VALID [2022-04-08 00:23:41,553 INFO L272 TraceCheckUtils]: 0: Hoare triple {2077#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2077#true} is VALID [2022-04-08 00:23:41,553 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:23:41,553 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:23:41,553 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1800825850] [2022-04-08 00:23:41,553 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:23:41,553 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [697939667] [2022-04-08 00:23:41,553 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [697939667] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 00:23:41,553 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 00:23:41,554 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-08 00:23:41,554 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [417169152] [2022-04-08 00:23:41,554 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 00:23:41,555 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:23:41,555 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:23:41,556 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:23:42,073 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:23:42,074 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 00:23:42,074 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:23:42,074 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 00:23:42,074 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=86, Unknown=0, NotChecked=0, Total=110 [2022-04-08 00:23:42,075 INFO L87 Difference]: Start difference. First operand 71 states and 88 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:23:42,962 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:42,963 INFO L93 Difference]: Finished difference Result 97 states and 117 transitions. [2022-04-08 00:23:42,963 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 00:23:42,963 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:23:42,963 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:23:42,963 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:23:42,964 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 49 transitions. [2022-04-08 00:23:42,965 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:23:42,966 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 49 transitions. [2022-04-08 00:23:42,966 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 49 transitions. [2022-04-08 00:23:45,072 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:23:45,076 INFO L225 Difference]: With dead ends: 97 [2022-04-08 00:23:45,077 INFO L226 Difference]: Without dead ends: 95 [2022-04-08 00:23:45,077 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 47 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=28, Invalid=104, Unknown=0, NotChecked=0, Total=132 [2022-04-08 00:23:45,078 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 11 mSDsluCounter, 90 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 129 SdHoareTripleChecker+Invalid, 26 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 18 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 00:23:45,078 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 129 Invalid, 26 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 18 Unchecked, 0.0s Time] [2022-04-08 00:23:45,078 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states. [2022-04-08 00:23:45,110 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 94. [2022-04-08 00:23:45,110 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:23:45,111 INFO L82 GeneralOperation]: Start isEquivalent. First operand 95 states. Second operand has 94 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 76 states have internal predecessors, (88), 14 states have call successors, (14), 10 states have call predecessors, (14), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 00:23:45,111 INFO L74 IsIncluded]: Start isIncluded. First operand 95 states. Second operand has 94 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 76 states have internal predecessors, (88), 14 states have call successors, (14), 10 states have call predecessors, (14), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 00:23:45,112 INFO L87 Difference]: Start difference. First operand 95 states. Second operand has 94 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 76 states have internal predecessors, (88), 14 states have call successors, (14), 10 states have call predecessors, (14), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 00:23:45,115 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:45,115 INFO L93 Difference]: Finished difference Result 95 states and 113 transitions. [2022-04-08 00:23:45,115 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 113 transitions. [2022-04-08 00:23:45,115 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:45,116 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:45,116 INFO L74 IsIncluded]: Start isIncluded. First operand has 94 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 76 states have internal predecessors, (88), 14 states have call successors, (14), 10 states have call predecessors, (14), 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:23:45,116 INFO L87 Difference]: Start difference. First operand has 94 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 76 states have internal predecessors, (88), 14 states have call successors, (14), 10 states have call predecessors, (14), 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:23:45,119 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:45,120 INFO L93 Difference]: Finished difference Result 95 states and 113 transitions. [2022-04-08 00:23:45,120 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 113 transitions. [2022-04-08 00:23:45,120 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:45,120 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:45,120 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:23:45,121 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:23:45,121 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 94 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 76 states have internal predecessors, (88), 14 states have call successors, (14), 10 states have call predecessors, (14), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 00:23:45,124 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 112 transitions. [2022-04-08 00:23:45,124 INFO L78 Accepts]: Start accepts. Automaton has 94 states and 112 transitions. Word has length 29 [2022-04-08 00:23:45,125 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:23:45,125 INFO L478 AbstractCegarLoop]: Abstraction has 94 states and 112 transitions. [2022-04-08 00:23:45,125 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:23:45,125 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 112 transitions. [2022-04-08 00:23:45,125 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-08 00:23:45,126 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:23:45,126 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:23:45,151 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-08 00:23:45,350 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:23:45,351 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:23:45,351 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:23:45,351 INFO L85 PathProgramCache]: Analyzing trace with hash -665062919, now seen corresponding path program 1 times [2022-04-08 00:23:45,351 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:23:45,351 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1271916669] [2022-04-08 00:23:45,352 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:45,352 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:23:45,367 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:23:45,367 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1463487254] [2022-04-08 00:23:45,368 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:45,368 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:23:45,368 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:23:45,369 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:23:45,373 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:23:45,408 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:45,409 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 3 conjunts are in the unsatisfiable core [2022-04-08 00:23:45,425 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:45,426 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:23:45,521 INFO L272 TraceCheckUtils]: 0: Hoare triple {2703#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-08 00:23:45,522 INFO L290 TraceCheckUtils]: 1: Hoare triple {2703#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] {2703#true} is VALID [2022-04-08 00:23:45,522 INFO L290 TraceCheckUtils]: 2: Hoare triple {2703#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-08 00:23:45,522 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2703#true} {2703#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-08 00:23:45,522 INFO L272 TraceCheckUtils]: 4: Hoare triple {2703#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-08 00:23:45,522 INFO L290 TraceCheckUtils]: 5: Hoare triple {2703#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] {2703#true} is VALID [2022-04-08 00:23:45,522 INFO L272 TraceCheckUtils]: 6: Hoare triple {2703#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] {2703#true} is VALID [2022-04-08 00:23:45,523 INFO L290 TraceCheckUtils]: 7: Hoare triple {2703#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] {2703#true} is VALID [2022-04-08 00:23:45,523 INFO L290 TraceCheckUtils]: 8: Hoare triple {2703#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[] {2703#true} is VALID [2022-04-08 00:23:45,523 INFO L290 TraceCheckUtils]: 9: Hoare triple {2703#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-08 00:23:45,523 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2703#true} {2703#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] {2703#true} is VALID [2022-04-08 00:23:45,523 INFO L272 TraceCheckUtils]: 11: Hoare triple {2703#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] {2703#true} is VALID [2022-04-08 00:23:45,524 INFO L290 TraceCheckUtils]: 12: Hoare triple {2703#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] {2703#true} is VALID [2022-04-08 00:23:45,524 INFO L290 TraceCheckUtils]: 13: Hoare triple {2703#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[] {2703#true} is VALID [2022-04-08 00:23:45,525 INFO L290 TraceCheckUtils]: 14: Hoare triple {2703#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-08 00:23:45,525 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2703#true} {2703#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] {2703#true} is VALID [2022-04-08 00:23:45,525 INFO L290 TraceCheckUtils]: 16: Hoare triple {2703#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] {2756#(= main_~B~0 main_~b~0)} is VALID [2022-04-08 00:23:45,526 INFO L290 TraceCheckUtils]: 17: Hoare triple {2756#(= 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] {2756#(= main_~B~0 main_~b~0)} is VALID [2022-04-08 00:23:45,526 INFO L290 TraceCheckUtils]: 18: Hoare triple {2756#(= main_~B~0 main_~b~0)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 5) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {2756#(= main_~B~0 main_~b~0)} is VALID [2022-04-08 00:23:45,527 INFO L290 TraceCheckUtils]: 19: Hoare triple {2756#(= 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[] {2756#(= main_~B~0 main_~b~0)} is VALID [2022-04-08 00:23:45,527 INFO L290 TraceCheckUtils]: 20: Hoare triple {2756#(= 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] {2756#(= main_~B~0 main_~b~0)} is VALID [2022-04-08 00:23:45,528 INFO L290 TraceCheckUtils]: 21: Hoare triple {2756#(= main_~B~0 main_~b~0)} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 5) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {2756#(= main_~B~0 main_~b~0)} is VALID [2022-04-08 00:23:45,528 INFO L272 TraceCheckUtils]: 22: Hoare triple {2756#(= 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] {2703#true} is VALID [2022-04-08 00:23:45,528 INFO L290 TraceCheckUtils]: 23: Hoare triple {2703#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] {2703#true} is VALID [2022-04-08 00:23:45,528 INFO L290 TraceCheckUtils]: 24: Hoare triple {2703#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[] {2703#true} is VALID [2022-04-08 00:23:45,528 INFO L290 TraceCheckUtils]: 25: Hoare triple {2703#true} [126] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-08 00:23:45,529 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2703#true} {2756#(= 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] {2756#(= main_~B~0 main_~b~0)} is VALID [2022-04-08 00:23:45,529 INFO L290 TraceCheckUtils]: 27: Hoare triple {2756#(= 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] {2704#false} is VALID [2022-04-08 00:23:45,530 INFO L290 TraceCheckUtils]: 28: Hoare triple {2704#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[] {2704#false} is VALID [2022-04-08 00:23:45,530 INFO L290 TraceCheckUtils]: 29: Hoare triple {2704#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] {2704#false} is VALID [2022-04-08 00:23:45,530 INFO L290 TraceCheckUtils]: 30: Hoare triple {2704#false} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 5) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {2704#false} is VALID [2022-04-08 00:23:45,530 INFO L272 TraceCheckUtils]: 31: Hoare triple {2704#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] {2704#false} is VALID [2022-04-08 00:23:45,530 INFO L290 TraceCheckUtils]: 32: Hoare triple {2704#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] {2704#false} is VALID [2022-04-08 00:23:45,532 INFO L290 TraceCheckUtils]: 33: Hoare triple {2704#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[] {2704#false} is VALID [2022-04-08 00:23:45,532 INFO L290 TraceCheckUtils]: 34: Hoare triple {2704#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2704#false} is VALID [2022-04-08 00:23:45,532 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:23:45,532 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 00:23:45,533 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:23:45,533 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1271916669] [2022-04-08 00:23:45,533 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:23:45,533 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1463487254] [2022-04-08 00:23:45,533 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1463487254] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 00:23:45,533 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 00:23:45,533 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 00:23:45,533 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1201949830] [2022-04-08 00:23:45,533 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 00:23:45,535 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:23:45,535 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:23:45,536 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:23:45,564 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:23:45,565 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 00:23:45,565 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:23:45,566 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 00:23:45,566 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 00:23:45,566 INFO L87 Difference]: Start difference. First operand 94 states and 112 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:23:45,706 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:45,706 INFO L93 Difference]: Finished difference Result 125 states and 151 transitions. [2022-04-08 00:23:45,707 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 00:23:45,707 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:23:45,707 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:23:45,707 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:23:45,708 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 58 transitions. [2022-04-08 00:23:45,709 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:23:45,710 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 58 transitions. [2022-04-08 00:23:45,710 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 58 transitions. [2022-04-08 00:23:45,771 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:23:45,774 INFO L225 Difference]: With dead ends: 125 [2022-04-08 00:23:45,775 INFO L226 Difference]: Without dead ends: 80 [2022-04-08 00:23:45,775 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:23:45,776 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:23:45,776 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:23:45,777 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 80 states. [2022-04-08 00:23:45,812 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 80 to 80. [2022-04-08 00:23:45,812 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:23:45,813 INFO L82 GeneralOperation]: Start isEquivalent. First operand 80 states. Second operand has 80 states, 60 states have (on average 1.25) internal successors, (75), 64 states have internal predecessors, (75), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 00:23:45,813 INFO L74 IsIncluded]: Start isIncluded. First operand 80 states. Second operand has 80 states, 60 states have (on average 1.25) internal successors, (75), 64 states have internal predecessors, (75), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 00:23:45,813 INFO L87 Difference]: Start difference. First operand 80 states. Second operand has 80 states, 60 states have (on average 1.25) internal successors, (75), 64 states have internal predecessors, (75), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 00:23:45,816 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:45,816 INFO L93 Difference]: Finished difference Result 80 states and 95 transitions. [2022-04-08 00:23:45,816 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 95 transitions. [2022-04-08 00:23:45,817 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:45,817 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:45,817 INFO L74 IsIncluded]: Start isIncluded. First operand has 80 states, 60 states have (on average 1.25) internal successors, (75), 64 states have internal predecessors, (75), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) Second operand 80 states. [2022-04-08 00:23:45,817 INFO L87 Difference]: Start difference. First operand has 80 states, 60 states have (on average 1.25) internal successors, (75), 64 states have internal predecessors, (75), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) Second operand 80 states. [2022-04-08 00:23:45,820 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:45,820 INFO L93 Difference]: Finished difference Result 80 states and 95 transitions. [2022-04-08 00:23:45,820 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 95 transitions. [2022-04-08 00:23:45,820 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:45,820 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:45,821 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:23:45,821 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:23:45,821 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 80 states, 60 states have (on average 1.25) internal successors, (75), 64 states have internal predecessors, (75), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 00:23:45,823 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 80 states to 80 states and 95 transitions. [2022-04-08 00:23:45,824 INFO L78 Accepts]: Start accepts. Automaton has 80 states and 95 transitions. Word has length 35 [2022-04-08 00:23:45,824 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:23:45,824 INFO L478 AbstractCegarLoop]: Abstraction has 80 states and 95 transitions. [2022-04-08 00:23:45,824 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:23:45,824 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 95 transitions. [2022-04-08 00:23:45,825 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-08 00:23:45,825 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:23:45,825 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:23:45,851 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:23:46,038 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:23:46,039 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:23:46,039 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:23:46,039 INFO L85 PathProgramCache]: Analyzing trace with hash 1800746756, now seen corresponding path program 1 times [2022-04-08 00:23:46,039 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:23:46,039 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [589768936] [2022-04-08 00:23:46,039 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:46,039 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:23:46,064 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:23:46,065 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1923160059] [2022-04-08 00:23:46,065 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:46,065 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:23:46,065 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:23:46,072 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:23:46,079 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:23:46,114 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:46,114 INFO L263 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 00:23:46,122 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 00:23:46,123 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 00:23:46,397 INFO L272 TraceCheckUtils]: 0: Hoare triple {3238#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3238#true} is VALID [2022-04-08 00:23:46,398 INFO L290 TraceCheckUtils]: 1: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:46,398 INFO L290 TraceCheckUtils]: 2: Hoare triple {3238#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3238#true} is VALID [2022-04-08 00:23:46,398 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3238#true} {3238#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3238#true} is VALID [2022-04-08 00:23:46,398 INFO L272 TraceCheckUtils]: 4: Hoare triple {3238#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3238#true} is VALID [2022-04-08 00:23:46,398 INFO L290 TraceCheckUtils]: 5: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:46,398 INFO L272 TraceCheckUtils]: 6: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:46,398 INFO L290 TraceCheckUtils]: 7: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:46,398 INFO L290 TraceCheckUtils]: 8: Hoare triple {3238#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[] {3238#true} is VALID [2022-04-08 00:23:46,398 INFO L290 TraceCheckUtils]: 9: Hoare triple {3238#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3238#true} is VALID [2022-04-08 00:23:46,399 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3238#true} {3238#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] {3238#true} is VALID [2022-04-08 00:23:46,399 INFO L272 TraceCheckUtils]: 11: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:46,399 INFO L290 TraceCheckUtils]: 12: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:46,399 INFO L290 TraceCheckUtils]: 13: Hoare triple {3238#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[] {3238#true} is VALID [2022-04-08 00:23:46,399 INFO L290 TraceCheckUtils]: 14: Hoare triple {3238#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3238#true} is VALID [2022-04-08 00:23:46,399 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3238#true} {3238#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] {3238#true} is VALID [2022-04-08 00:23:46,399 INFO L290 TraceCheckUtils]: 16: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:46,399 INFO L290 TraceCheckUtils]: 17: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:46,399 INFO L290 TraceCheckUtils]: 18: Hoare triple {3238#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 5) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3238#true} is VALID [2022-04-08 00:23:46,400 INFO L290 TraceCheckUtils]: 19: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:46,400 INFO L290 TraceCheckUtils]: 20: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:46,400 INFO L290 TraceCheckUtils]: 21: Hoare triple {3238#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 5) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3238#true} is VALID [2022-04-08 00:23:46,400 INFO L290 TraceCheckUtils]: 22: Hoare triple {3238#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[] {3238#true} is VALID [2022-04-08 00:23:46,400 INFO L290 TraceCheckUtils]: 23: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:46,400 INFO L290 TraceCheckUtils]: 24: Hoare triple {3238#true} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 5) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {3238#true} is VALID [2022-04-08 00:23:46,400 INFO L272 TraceCheckUtils]: 25: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:46,402 INFO L290 TraceCheckUtils]: 26: Hoare triple {3238#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] {3321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 00:23:46,402 INFO L290 TraceCheckUtils]: 27: Hoare triple {3321#(= |__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[] {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 00:23:46,403 INFO L290 TraceCheckUtils]: 28: Hoare triple {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} [126] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 00:23:46,404 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} {3238#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] {3332#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-08 00:23:46,404 INFO L290 TraceCheckUtils]: 30: Hoare triple {3332#(= (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[] {3332#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-08 00:23:46,405 INFO L272 TraceCheckUtils]: 31: Hoare triple {3332#(= (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] {3339#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2022-04-08 00:23:46,408 INFO L290 TraceCheckUtils]: 32: Hoare triple {3339#(= |__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] {3343#(= __VERIFIER_assert_~cond 1)} is VALID [2022-04-08 00:23:46,409 INFO L290 TraceCheckUtils]: 33: Hoare triple {3343#(= __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[] {3239#false} is VALID [2022-04-08 00:23:46,409 INFO L290 TraceCheckUtils]: 34: Hoare triple {3239#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3239#false} is VALID [2022-04-08 00:23:46,409 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:23:46,409 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 00:23:47,440 INFO L290 TraceCheckUtils]: 34: Hoare triple {3239#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3239#false} is VALID [2022-04-08 00:23:47,442 INFO L290 TraceCheckUtils]: 33: Hoare triple {3353#(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[] {3239#false} is VALID [2022-04-08 00:23:47,447 INFO L290 TraceCheckUtils]: 32: Hoare triple {3325#(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] {3353#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 00:23:47,448 INFO L272 TraceCheckUtils]: 31: Hoare triple {3332#(= (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] {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 00:23:47,452 INFO L290 TraceCheckUtils]: 30: Hoare triple {3332#(= (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[] {3332#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-08 00:23:47,453 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} {3238#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] {3332#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-08 00:23:47,453 INFO L290 TraceCheckUtils]: 28: Hoare triple {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} [126] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 00:23:47,454 INFO L290 TraceCheckUtils]: 27: Hoare triple {3375#(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[] {3325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 00:23:47,454 INFO L290 TraceCheckUtils]: 26: Hoare triple {3238#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] {3375#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 00:23:47,454 INFO L272 TraceCheckUtils]: 25: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:47,454 INFO L290 TraceCheckUtils]: 24: Hoare triple {3238#true} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 5) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {3238#true} is VALID [2022-04-08 00:23:47,454 INFO L290 TraceCheckUtils]: 23: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:47,454 INFO L290 TraceCheckUtils]: 22: Hoare triple {3238#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[] {3238#true} is VALID [2022-04-08 00:23:47,454 INFO L290 TraceCheckUtils]: 21: Hoare triple {3238#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 5) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3238#true} is VALID [2022-04-08 00:23:47,454 INFO L290 TraceCheckUtils]: 20: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:47,454 INFO L290 TraceCheckUtils]: 19: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:47,455 INFO L290 TraceCheckUtils]: 18: Hoare triple {3238#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 5) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3238#true} is VALID [2022-04-08 00:23:47,455 INFO L290 TraceCheckUtils]: 17: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:47,455 INFO L290 TraceCheckUtils]: 16: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:47,455 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3238#true} {3238#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] {3238#true} is VALID [2022-04-08 00:23:47,455 INFO L290 TraceCheckUtils]: 14: Hoare triple {3238#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3238#true} is VALID [2022-04-08 00:23:47,455 INFO L290 TraceCheckUtils]: 13: Hoare triple {3238#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[] {3238#true} is VALID [2022-04-08 00:23:47,455 INFO L290 TraceCheckUtils]: 12: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:47,455 INFO L272 TraceCheckUtils]: 11: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:47,455 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3238#true} {3238#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] {3238#true} is VALID [2022-04-08 00:23:47,455 INFO L290 TraceCheckUtils]: 9: Hoare triple {3238#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3238#true} is VALID [2022-04-08 00:23:47,455 INFO L290 TraceCheckUtils]: 8: Hoare triple {3238#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[] {3238#true} is VALID [2022-04-08 00:23:47,455 INFO L290 TraceCheckUtils]: 7: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:47,456 INFO L272 TraceCheckUtils]: 6: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:47,456 INFO L290 TraceCheckUtils]: 5: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:47,456 INFO L272 TraceCheckUtils]: 4: Hoare triple {3238#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3238#true} is VALID [2022-04-08 00:23:47,456 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3238#true} {3238#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3238#true} is VALID [2022-04-08 00:23:47,456 INFO L290 TraceCheckUtils]: 2: Hoare triple {3238#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3238#true} is VALID [2022-04-08 00:23:47,456 INFO L290 TraceCheckUtils]: 1: Hoare triple {3238#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] {3238#true} is VALID [2022-04-08 00:23:47,456 INFO L272 TraceCheckUtils]: 0: Hoare triple {3238#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3238#true} is VALID [2022-04-08 00:23:47,457 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:23:47,457 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 00:23:47,457 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [589768936] [2022-04-08 00:23:47,457 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 00:23:47,457 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1923160059] [2022-04-08 00:23:47,457 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1923160059] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 00:23:47,457 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 00:23:47,457 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6] total 9 [2022-04-08 00:23:47,457 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1369967171] [2022-04-08 00:23:47,457 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 00:23:47,458 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:23:47,458 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 00:23:47,459 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:23:47,483 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:23:47,483 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 00:23:47,483 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 00:23:47,484 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 00:23:47,484 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-04-08 00:23:47,485 INFO L87 Difference]: Start difference. First operand 80 states and 95 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:23:52,526 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.78s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 00:23:52,760 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:52,761 INFO L93 Difference]: Finished difference Result 91 states and 105 transitions. [2022-04-08 00:23:52,761 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 00:23:52,761 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:23:52,761 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 00:23:52,761 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:23:52,763 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 43 transitions. [2022-04-08 00:23:52,763 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:23:52,764 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 43 transitions. [2022-04-08 00:23:52,765 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 43 transitions. [2022-04-08 00:23:52,806 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:23:52,808 INFO L225 Difference]: With dead ends: 91 [2022-04-08 00:23:52,808 INFO L226 Difference]: Without dead ends: 76 [2022-04-08 00:23:52,809 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:23:52,809 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 12 mSDsluCounter, 145 mSDsCounter, 0 mSdLazyCounter, 58 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 174 SdHoareTripleChecker+Invalid, 61 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 58 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.5s IncrementalHoareTripleChecker+Time [2022-04-08 00:23:52,809 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 174 Invalid, 61 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 58 Invalid, 0 Unknown, 0 Unchecked, 2.5s Time] [2022-04-08 00:23:52,810 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2022-04-08 00:23:52,830 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 76. [2022-04-08 00:23:52,830 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 00:23:52,831 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand has 76 states, 58 states have (on average 1.206896551724138) internal successors, (70), 61 states have internal predecessors, (70), 10 states have call successors, (10), 8 states have call predecessors, (10), 7 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 00:23:52,831 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand has 76 states, 58 states have (on average 1.206896551724138) internal successors, (70), 61 states have internal predecessors, (70), 10 states have call successors, (10), 8 states have call predecessors, (10), 7 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 00:23:52,831 INFO L87 Difference]: Start difference. First operand 76 states. Second operand has 76 states, 58 states have (on average 1.206896551724138) internal successors, (70), 61 states have internal predecessors, (70), 10 states have call successors, (10), 8 states have call predecessors, (10), 7 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 00:23:52,834 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:52,834 INFO L93 Difference]: Finished difference Result 76 states and 88 transitions. [2022-04-08 00:23:52,834 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 88 transitions. [2022-04-08 00:23:52,834 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:52,835 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:52,835 INFO L74 IsIncluded]: Start isIncluded. First operand has 76 states, 58 states have (on average 1.206896551724138) internal successors, (70), 61 states have internal predecessors, (70), 10 states have call successors, (10), 8 states have call predecessors, (10), 7 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) Second operand 76 states. [2022-04-08 00:23:52,835 INFO L87 Difference]: Start difference. First operand has 76 states, 58 states have (on average 1.206896551724138) internal successors, (70), 61 states have internal predecessors, (70), 10 states have call successors, (10), 8 states have call predecessors, (10), 7 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) Second operand 76 states. [2022-04-08 00:23:52,837 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 00:23:52,838 INFO L93 Difference]: Finished difference Result 76 states and 88 transitions. [2022-04-08 00:23:52,838 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 88 transitions. [2022-04-08 00:23:52,838 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 00:23:52,838 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 00:23:52,838 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 00:23:52,838 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 00:23:52,839 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 76 states, 58 states have (on average 1.206896551724138) internal successors, (70), 61 states have internal predecessors, (70), 10 states have call successors, (10), 8 states have call predecessors, (10), 7 states have return successors, (8), 6 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 00:23:52,841 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 76 states to 76 states and 88 transitions. [2022-04-08 00:23:52,842 INFO L78 Accepts]: Start accepts. Automaton has 76 states and 88 transitions. Word has length 35 [2022-04-08 00:23:52,842 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 00:23:52,842 INFO L478 AbstractCegarLoop]: Abstraction has 76 states and 88 transitions. [2022-04-08 00:23:52,842 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:23:52,842 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 88 transitions. [2022-04-08 00:23:52,843 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-08 00:23:52,843 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 00:23:52,843 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:23:52,862 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-04-08 00:23:53,051 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:23:53,051 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 00:23:53,052 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 00:23:53,052 INFO L85 PathProgramCache]: Analyzing trace with hash 1291395213, now seen corresponding path program 1 times [2022-04-08 00:23:53,052 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 00:23:53,052 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [900415782] [2022-04-08 00:23:53,052 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:53,052 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 00:23:53,068 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 00:23:53,068 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [542381687] [2022-04-08 00:23:53,068 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 00:23:53,068 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 00:23:53,069 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 00:23:53,080 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:23:53,081 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process