/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/automizer/LoopAccelerationJordanC.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/divbin_unwindbound20.i -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 18:49:10,980 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 18:49:10,981 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 18:49:10,999 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 18:49:11,000 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 18:49:11,000 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 18:49:11,001 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 18:49:11,002 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 18:49:11,003 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 18:49:11,004 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 18:49:11,005 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 18:49:11,005 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 18:49:11,006 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 18:49:11,006 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 18:49:11,007 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 18:49:11,007 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 18:49:11,008 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 18:49:11,008 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 18:49:11,009 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 18:49:11,010 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 18:49:11,011 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 18:49:11,012 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 18:49:11,012 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 18:49:11,013 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 18:49:11,013 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 18:49:11,015 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 18:49:11,015 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 18:49:11,015 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 18:49:11,016 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 18:49:11,016 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 18:49:11,017 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 18:49:11,017 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 18:49:11,017 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 18:49:11,018 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 18:49:11,019 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 18:49:11,019 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 18:49:11,019 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 18:49:11,020 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 18:49:11,020 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 18:49:11,020 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 18:49:11,021 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 18:49:11,021 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 18:49:11,022 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-07 18:49:11,028 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 18:49:11,028 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 18:49:11,029 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 18:49:11,029 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 18:49:11,029 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 18:49:11,029 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 18:49:11,029 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 18:49:11,029 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 18:49:11,030 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 18:49:11,030 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 18:49:11,030 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 18:49:11,030 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 18:49:11,030 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 18:49:11,030 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 18:49:11,030 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 18:49:11,030 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 18:49:11,031 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-07 18:49:11,031 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 18:49:11,031 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 18:49:11,031 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 18:49:11,031 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 18:49:11,032 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-07 18:49:11,032 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_JORDAN 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-07 18:49:11,204 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 18:49:11,221 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 18:49:11,223 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 18:49:11,223 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 18:49:11,224 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 18:49:11,225 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/divbin_unwindbound20.i [2022-04-07 18:49:11,275 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c25d448c8/f798da91b0f44bc0ac7b255c8ca221aa/FLAG6fb914269 [2022-04-07 18:49:11,620 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 18:49:11,620 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/divbin_unwindbound20.i [2022-04-07 18:49:11,625 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c25d448c8/f798da91b0f44bc0ac7b255c8ca221aa/FLAG6fb914269 [2022-04-07 18:49:12,013 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c25d448c8/f798da91b0f44bc0ac7b255c8ca221aa [2022-04-07 18:49:12,016 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 18:49:12,018 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-07 18:49:12,020 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 18:49:12,020 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 18:49:12,023 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 18:49:12,024 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 06:49:12" (1/1) ... [2022-04-07 18:49:12,025 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5ff6cfd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:49:12, skipping insertion in model container [2022-04-07 18:49:12,025 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 06:49:12" (1/1) ... [2022-04-07 18:49:12,030 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 18:49:12,041 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 18:49:12,183 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/divbin_unwindbound20.i[950,963] [2022-04-07 18:49:12,194 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 18:49:12,200 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 18:49:12,208 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/divbin_unwindbound20.i[950,963] [2022-04-07 18:49:12,213 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 18:49:12,222 INFO L208 MainTranslator]: Completed translation [2022-04-07 18:49:12,223 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:49:12 WrapperNode [2022-04-07 18:49:12,223 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 18:49:12,224 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 18:49:12,224 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 18:49:12,224 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 18:49:12,231 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:49:12" (1/1) ... [2022-04-07 18:49:12,231 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:49:12" (1/1) ... [2022-04-07 18:49:12,235 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:49:12" (1/1) ... [2022-04-07 18:49:12,235 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:49:12" (1/1) ... [2022-04-07 18:49:12,239 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:49:12" (1/1) ... [2022-04-07 18:49:12,242 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:49:12" (1/1) ... [2022-04-07 18:49:12,243 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:49:12" (1/1) ... [2022-04-07 18:49:12,244 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 18:49:12,245 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 18:49:12,245 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 18:49:12,245 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 18:49:12,246 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:49:12" (1/1) ... [2022-04-07 18:49:12,250 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 18:49:12,257 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:49:12,286 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-07 18:49:12,292 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-07 18:49:12,310 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 18:49:12,310 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 18:49:12,310 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 18:49:12,310 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 18:49:12,310 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 18:49:12,310 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 18:49:12,310 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 18:49:12,310 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 18:49:12,311 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_perror_fail [2022-04-07 18:49:12,311 INFO L130 BoogieDeclarations]: Found specification of procedure __assert [2022-04-07 18:49:12,311 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 18:49:12,311 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 18:49:12,311 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-07 18:49:12,311 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 18:49:12,311 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 18:49:12,311 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 18:49:12,311 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 18:49:12,311 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 18:49:12,311 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 18:49:12,312 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 18:49:12,312 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 18:49:12,312 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 18:49:12,356 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 18:49:12,357 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 18:49:12,490 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 18:49:12,495 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 18:49:12,495 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-07 18:49:12,497 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 06:49:12 BoogieIcfgContainer [2022-04-07 18:49:12,497 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 18:49:12,497 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-07 18:49:12,497 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-07 18:49:12,498 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-07 18:49:12,500 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 06:49:12" (1/1) ... [2022-04-07 18:49:12,502 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-07 18:49:12,520 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 06:49:12 BasicIcfg [2022-04-07 18:49:12,521 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-07 18:49:12,522 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 18:49:12,522 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 18:49:12,524 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 18:49:12,524 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 06:49:12" (1/4) ... [2022-04-07 18:49:12,525 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5f69e592 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 06:49:12, skipping insertion in model container [2022-04-07 18:49:12,525 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:49:12" (2/4) ... [2022-04-07 18:49:12,525 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5f69e592 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 06:49:12, skipping insertion in model container [2022-04-07 18:49:12,525 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 06:49:12" (3/4) ... [2022-04-07 18:49:12,526 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5f69e592 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 06:49:12, skipping insertion in model container [2022-04-07 18:49:12,526 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 06:49:12" (4/4) ... [2022-04-07 18:49:12,527 INFO L111 eAbstractionObserver]: Analyzing ICFG divbin_unwindbound20.iJordan [2022-04-07 18:49:12,530 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-07 18:49:12,530 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 18:49:12,559 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 18:49:12,563 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=ForwardPredicates, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, 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-07 18:49:12,563 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 18:49:12,576 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-07 18:49:12,581 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-07 18:49:12,581 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:49:12,582 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-07 18:49:12,582 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:49:12,585 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:49:12,586 INFO L85 PathProgramCache]: Analyzing trace with hash 35225450, now seen corresponding path program 1 times [2022-04-07 18:49:12,592 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:49:12,593 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [861779462] [2022-04-07 18:49:12,593 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:12,593 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:49:12,711 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:12,782 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 18:49:12,792 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:12,808 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-07 18:49:12,808 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-07 18:49:12,808 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-07 18:49:12,809 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 18:49:12,822 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:12,829 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-07 18:49:12,830 INFO L290 TraceCheckUtils]: 1: Hoare triple {36#true} [102] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-07 18:49:12,830 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-07 18:49:12,830 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-07 18:49:12,830 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-07 18:49:12,832 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:12,839 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-07 18:49:12,840 INFO L290 TraceCheckUtils]: 1: Hoare triple {36#true} [102] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-07 18:49:12,840 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-07 18:49:12,841 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-07 18:49:12,842 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-07 18:49:12,843 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-07 18:49:12,843 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-07 18:49:12,843 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-07 18:49:12,848 INFO L272 TraceCheckUtils]: 4: Hoare triple {36#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#true} is VALID [2022-04-07 18:49:12,848 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-07 18:49:12,849 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-07 18:49:12,849 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-07 18:49:12,849 INFO L290 TraceCheckUtils]: 8: Hoare triple {36#true} [102] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-07 18:49:12,850 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-07 18:49:12,852 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-07 18:49:12,852 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-07 18:49:12,852 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-07 18:49:12,855 INFO L290 TraceCheckUtils]: 13: Hoare triple {36#true} [102] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-07 18:49:12,855 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-07 18:49:12,855 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-07 18:49:12,856 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-07 18:49:12,856 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-07 18:49:12,856 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-07 18:49:12,856 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-07 18:49:12,856 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-07 18:49:12,856 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-07 18:49:12,857 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-07 18:49:12,857 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-07 18:49:12,858 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:49:12,858 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [861779462] [2022-04-07 18:49:12,858 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [861779462] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 18:49:12,858 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 18:49:12,859 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 18:49:12,860 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1250127367] [2022-04-07 18:49:12,860 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 18:49:12,864 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-07 18:49:12,865 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:49:12,867 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-07 18:49:12,897 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-07 18:49:12,897 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 18:49:12,897 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:49:12,920 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 18:49:12,921 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 18:49:12,925 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-07 18:49:13,060 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:13,061 INFO L93 Difference]: Finished difference Result 34 states and 40 transitions. [2022-04-07 18:49:13,061 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 18:49:13,061 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-07 18:49:13,061 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:49:13,062 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-07 18:49:13,067 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 45 transitions. [2022-04-07 18:49:13,067 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-07 18:49:13,070 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 45 transitions. [2022-04-07 18:49:13,070 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 45 transitions. [2022-04-07 18:49:13,110 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:49:13,116 INFO L225 Difference]: With dead ends: 34 [2022-04-07 18:49:13,116 INFO L226 Difference]: Without dead ends: 29 [2022-04-07 18:49:13,118 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-07 18:49:13,120 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-07 18:49:13,120 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-07 18:49:13,131 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-07 18:49:13,139 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 28. [2022-04-07 18:49:13,139 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:49:13,139 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-07 18:49:13,140 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-07 18:49:13,140 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-07 18:49:13,147 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:13,148 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-07 18:49:13,148 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-07 18:49:13,148 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:13,148 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:13,149 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-07 18:49:13,149 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-07 18:49:13,151 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:13,151 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-07 18:49:13,151 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-07 18:49:13,152 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:13,152 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:13,152 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:49:13,152 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:49:13,152 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-07 18:49:13,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 34 transitions. [2022-04-07 18:49:13,155 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 34 transitions. Word has length 23 [2022-04-07 18:49:13,155 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:49:13,155 INFO L478 AbstractCegarLoop]: Abstraction has 28 states and 34 transitions. [2022-04-07 18:49:13,155 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-07 18:49:13,155 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-07 18:49:13,156 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-07 18:49:13,156 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:49:13,157 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-07 18:49:13,157 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 18:49:13,157 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:49:13,158 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:49:13,158 INFO L85 PathProgramCache]: Analyzing trace with hash 106385839, now seen corresponding path program 1 times [2022-04-07 18:49:13,158 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:49:13,158 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1197564668] [2022-04-07 18:49:13,158 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:13,158 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:49:13,184 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:49:13,184 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1024979179] [2022-04-07 18:49:13,184 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:13,184 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:49:13,184 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:49:13,192 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-07 18:49:13,193 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-07 18:49:13,234 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:13,236 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-07 18:49:13,259 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:13,264 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:49:13,422 INFO L272 TraceCheckUtils]: 0: Hoare triple {172#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {172#true} is VALID [2022-04-07 18:49:13,423 INFO L290 TraceCheckUtils]: 1: Hoare triple {172#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] {180#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:13,423 INFO L290 TraceCheckUtils]: 2: Hoare triple {180#(<= ~counter~0 0)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {180#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:13,424 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {180#(<= ~counter~0 0)} {172#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {180#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:13,424 INFO L272 TraceCheckUtils]: 4: Hoare triple {180#(<= ~counter~0 0)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {180#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:13,425 INFO L290 TraceCheckUtils]: 5: Hoare triple {180#(<= ~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] {180#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:13,425 INFO L272 TraceCheckUtils]: 6: Hoare triple {180#(<= ~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] {180#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:13,426 INFO L290 TraceCheckUtils]: 7: Hoare triple {180#(<= ~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] {180#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:13,426 INFO L290 TraceCheckUtils]: 8: Hoare triple {180#(<= ~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[] {180#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:13,426 INFO L290 TraceCheckUtils]: 9: Hoare triple {180#(<= ~counter~0 0)} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {180#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:13,427 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {180#(<= ~counter~0 0)} {180#(<= ~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] {180#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:13,427 INFO L272 TraceCheckUtils]: 11: Hoare triple {180#(<= ~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] {180#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:13,428 INFO L290 TraceCheckUtils]: 12: Hoare triple {180#(<= ~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] {180#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:13,428 INFO L290 TraceCheckUtils]: 13: Hoare triple {180#(<= ~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[] {180#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:13,428 INFO L290 TraceCheckUtils]: 14: Hoare triple {180#(<= ~counter~0 0)} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {180#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:13,429 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {180#(<= ~counter~0 0)} {180#(<= ~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] {180#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:13,429 INFO L290 TraceCheckUtils]: 16: Hoare triple {180#(<= ~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] {180#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:13,430 INFO L290 TraceCheckUtils]: 17: Hoare triple {180#(<= ~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] {229#(<= |main_#t~post3| 0)} is VALID [2022-04-07 18:49:13,430 INFO L290 TraceCheckUtils]: 18: Hoare triple {229#(<= |main_#t~post3| 0)} [109] L36-1-->L45-2: Formula: (not (< |v_main_#t~post3_3| 20)) InVars {main_#t~post3=|v_main_#t~post3_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {173#false} is VALID [2022-04-07 18:49:13,430 INFO L290 TraceCheckUtils]: 19: Hoare triple {173#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] {173#false} is VALID [2022-04-07 18:49:13,431 INFO L290 TraceCheckUtils]: 20: Hoare triple {173#false} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 20)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {173#false} is VALID [2022-04-07 18:49:13,431 INFO L272 TraceCheckUtils]: 21: Hoare triple {173#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] {173#false} is VALID [2022-04-07 18:49:13,431 INFO L290 TraceCheckUtils]: 22: Hoare triple {173#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] {173#false} is VALID [2022-04-07 18:49:13,431 INFO L290 TraceCheckUtils]: 23: Hoare triple {173#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[] {173#false} is VALID [2022-04-07 18:49:13,431 INFO L290 TraceCheckUtils]: 24: Hoare triple {173#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {173#false} is VALID [2022-04-07 18:49:13,431 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-07 18:49:13,432 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 18:49:13,432 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:49:13,432 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1197564668] [2022-04-07 18:49:13,432 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:49:13,432 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1024979179] [2022-04-07 18:49:13,432 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1024979179] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 18:49:13,432 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 18:49:13,432 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-07 18:49:13,433 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1751759375] [2022-04-07 18:49:13,433 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 18:49:13,434 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-07 18:49:13,434 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:49:13,434 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-07 18:49:13,449 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-07 18:49:13,450 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-07 18:49:13,450 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:49:13,450 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-07 18:49:13,450 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-07 18:49:13,451 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-07 18:49:13,509 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:13,509 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2022-04-07 18:49:13,510 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-07 18:49:13,510 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-07 18:49:13,510 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:49:13,510 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-07 18:49:13,512 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2022-04-07 18:49:13,512 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-07 18:49:13,513 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2022-04-07 18:49:13,513 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 37 transitions. [2022-04-07 18:49:13,538 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:49:13,539 INFO L225 Difference]: With dead ends: 30 [2022-04-07 18:49:13,539 INFO L226 Difference]: Without dead ends: 30 [2022-04-07 18:49:13,539 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-07 18:49:13,540 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-07 18:49:13,540 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-07 18:49:13,541 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2022-04-07 18:49:13,543 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 30. [2022-04-07 18:49:13,543 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:49:13,543 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-07 18:49:13,543 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-07 18:49:13,544 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-07 18:49:13,545 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:13,545 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2022-04-07 18:49:13,546 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2022-04-07 18:49:13,546 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:13,546 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:13,546 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-07 18:49:13,547 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-07 18:49:13,548 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:13,548 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2022-04-07 18:49:13,548 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2022-04-07 18:49:13,549 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:13,549 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:13,549 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:49:13,549 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:49:13,549 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-07 18:49:13,551 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 36 transitions. [2022-04-07 18:49:13,551 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 36 transitions. Word has length 25 [2022-04-07 18:49:13,551 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:49:13,551 INFO L478 AbstractCegarLoop]: Abstraction has 30 states and 36 transitions. [2022-04-07 18:49:13,551 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-07 18:49:13,551 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2022-04-07 18:49:13,552 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-04-07 18:49:13,552 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:49:13,552 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-07 18:49:13,572 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-07 18:49:13,770 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-07 18:49:13,771 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:49:13,772 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:49:13,772 INFO L85 PathProgramCache]: Analyzing trace with hash 1662084126, now seen corresponding path program 1 times [2022-04-07 18:49:13,772 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:49:13,773 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1572813152] [2022-04-07 18:49:13,773 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:13,773 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:49:13,815 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:49:13,816 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1049825375] [2022-04-07 18:49:13,816 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:13,816 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:49:13,816 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:49:13,823 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-07 18:49:13,824 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-07 18:49:13,865 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:13,866 INFO L263 TraceCheckSpWp]: Trace formula consists of 91 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 18:49:13,879 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:13,880 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:49:14,029 INFO L272 TraceCheckUtils]: 0: Hoare triple {370#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {370#true} is VALID [2022-04-07 18:49:14,030 INFO L290 TraceCheckUtils]: 1: Hoare triple {370#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] {378#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:14,030 INFO L290 TraceCheckUtils]: 2: Hoare triple {378#(<= ~counter~0 0)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {378#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:14,031 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {378#(<= ~counter~0 0)} {370#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {378#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:14,031 INFO L272 TraceCheckUtils]: 4: Hoare triple {378#(<= ~counter~0 0)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {378#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:14,031 INFO L290 TraceCheckUtils]: 5: Hoare triple {378#(<= ~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] {378#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:14,032 INFO L272 TraceCheckUtils]: 6: Hoare triple {378#(<= ~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] {378#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:14,032 INFO L290 TraceCheckUtils]: 7: Hoare triple {378#(<= ~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] {378#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:14,033 INFO L290 TraceCheckUtils]: 8: Hoare triple {378#(<= ~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[] {378#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:14,033 INFO L290 TraceCheckUtils]: 9: Hoare triple {378#(<= ~counter~0 0)} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {378#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:14,034 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {378#(<= ~counter~0 0)} {378#(<= ~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] {378#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:14,034 INFO L272 TraceCheckUtils]: 11: Hoare triple {378#(<= ~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] {378#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:14,034 INFO L290 TraceCheckUtils]: 12: Hoare triple {378#(<= ~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] {378#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:14,035 INFO L290 TraceCheckUtils]: 13: Hoare triple {378#(<= ~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[] {378#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:14,035 INFO L290 TraceCheckUtils]: 14: Hoare triple {378#(<= ~counter~0 0)} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {378#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:14,036 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {378#(<= ~counter~0 0)} {378#(<= ~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] {378#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:14,036 INFO L290 TraceCheckUtils]: 16: Hoare triple {378#(<= ~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] {378#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:14,037 INFO L290 TraceCheckUtils]: 17: Hoare triple {378#(<= ~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] {427#(<= ~counter~0 1)} is VALID [2022-04-07 18:49:14,037 INFO L290 TraceCheckUtils]: 18: Hoare triple {427#(<= ~counter~0 1)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {427#(<= ~counter~0 1)} is VALID [2022-04-07 18:49:14,037 INFO L290 TraceCheckUtils]: 19: Hoare triple {427#(<= ~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[] {427#(<= ~counter~0 1)} is VALID [2022-04-07 18:49:14,038 INFO L290 TraceCheckUtils]: 20: Hoare triple {427#(<= ~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] {437#(<= |main_#t~post4| 1)} is VALID [2022-04-07 18:49:14,038 INFO L290 TraceCheckUtils]: 21: Hoare triple {437#(<= |main_#t~post4| 1)} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 20)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {371#false} is VALID [2022-04-07 18:49:14,038 INFO L272 TraceCheckUtils]: 22: Hoare triple {371#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] {371#false} is VALID [2022-04-07 18:49:14,039 INFO L290 TraceCheckUtils]: 23: Hoare triple {371#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] {371#false} is VALID [2022-04-07 18:49:14,039 INFO L290 TraceCheckUtils]: 24: Hoare triple {371#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[] {371#false} is VALID [2022-04-07 18:49:14,039 INFO L290 TraceCheckUtils]: 25: Hoare triple {371#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {371#false} is VALID [2022-04-07 18:49:14,039 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-07 18:49:14,039 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 18:49:14,039 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:49:14,039 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1572813152] [2022-04-07 18:49:14,040 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:49:14,040 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1049825375] [2022-04-07 18:49:14,040 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1049825375] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 18:49:14,040 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 18:49:14,040 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 18:49:14,040 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1550820606] [2022-04-07 18:49:14,040 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 18:49:14,040 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-07 18:49:14,041 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:49:14,041 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-07 18:49:14,056 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-07 18:49:14,056 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 18:49:14,056 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:49:14,057 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 18:49:14,057 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-07 18:49:14,057 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-07 18:49:14,122 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:14,123 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-07 18:49:14,123 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 18:49:14,123 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-07 18:49:14,123 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:49:14,123 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-07 18:49:14,125 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2022-04-07 18:49:14,125 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-07 18:49:14,126 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2022-04-07 18:49:14,126 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 42 transitions. [2022-04-07 18:49:14,153 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:49:14,154 INFO L225 Difference]: With dead ends: 34 [2022-04-07 18:49:14,154 INFO L226 Difference]: Without dead ends: 34 [2022-04-07 18:49:14,154 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-07 18:49:14,155 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-07 18:49:14,155 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-07 18:49:14,156 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-07 18:49:14,158 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2022-04-07 18:49:14,159 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:49:14,159 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-07 18:49:14,159 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-07 18:49:14,159 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-07 18:49:14,161 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:14,161 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-07 18:49:14,161 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2022-04-07 18:49:14,161 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:14,161 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:14,162 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-07 18:49:14,162 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-07 18:49:14,164 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:14,165 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-07 18:49:14,165 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2022-04-07 18:49:14,165 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:14,165 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:14,165 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:49:14,165 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:49:14,165 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-07 18:49:14,166 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 40 transitions. [2022-04-07 18:49:14,167 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 40 transitions. Word has length 26 [2022-04-07 18:49:14,167 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:49:14,167 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 40 transitions. [2022-04-07 18:49:14,167 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-07 18:49:14,167 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 40 transitions. [2022-04-07 18:49:14,168 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-04-07 18:49:14,168 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:49:14,168 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-07 18:49:14,186 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-07 18:49:14,375 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-07 18:49:14,376 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:49:14,376 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:49:14,376 INFO L85 PathProgramCache]: Analyzing trace with hash 1663216184, now seen corresponding path program 1 times [2022-04-07 18:49:14,376 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:49:14,376 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [335776832] [2022-04-07 18:49:14,376 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:14,377 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:49:14,392 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:49:14,392 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [673918683] [2022-04-07 18:49:14,392 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:14,392 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:49:14,392 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:49:14,396 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-07 18:49:14,398 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-07 18:49:14,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:14,434 INFO L263 TraceCheckSpWp]: Trace formula consists of 91 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-07 18:49:14,442 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:14,443 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:49:15,129 INFO L272 TraceCheckUtils]: 0: Hoare triple {587#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {587#true} is VALID [2022-04-07 18:49:15,130 INFO L290 TraceCheckUtils]: 1: Hoare triple {587#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] {587#true} is VALID [2022-04-07 18:49:15,130 INFO L290 TraceCheckUtils]: 2: Hoare triple {587#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {587#true} is VALID [2022-04-07 18:49:15,130 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {587#true} {587#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {587#true} is VALID [2022-04-07 18:49:15,130 INFO L272 TraceCheckUtils]: 4: Hoare triple {587#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {587#true} is VALID [2022-04-07 18:49:15,130 INFO L290 TraceCheckUtils]: 5: Hoare triple {587#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] {587#true} is VALID [2022-04-07 18:49:15,130 INFO L272 TraceCheckUtils]: 6: Hoare triple {587#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] {587#true} is VALID [2022-04-07 18:49:15,131 INFO L290 TraceCheckUtils]: 7: Hoare triple {587#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] {613#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 18:49:15,131 INFO L290 TraceCheckUtils]: 8: Hoare triple {613#(= 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[] {617#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:49:15,132 INFO L290 TraceCheckUtils]: 9: Hoare triple {617#(not (= |assume_abort_if_not_#in~cond| 0))} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {617#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:49:15,132 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {617#(not (= |assume_abort_if_not_#in~cond| 0))} {587#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] {624#(< (mod main_~B~0 4294967296) 2147483647)} is VALID [2022-04-07 18:49:15,132 INFO L272 TraceCheckUtils]: 11: Hoare triple {624#(< (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] {587#true} is VALID [2022-04-07 18:49:15,133 INFO L290 TraceCheckUtils]: 12: Hoare triple {587#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] {587#true} is VALID [2022-04-07 18:49:15,133 INFO L290 TraceCheckUtils]: 13: Hoare triple {587#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[] {587#true} is VALID [2022-04-07 18:49:15,133 INFO L290 TraceCheckUtils]: 14: Hoare triple {587#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {587#true} is VALID [2022-04-07 18:49:15,133 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {587#true} {624#(< (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] {624#(< (mod main_~B~0 4294967296) 2147483647)} is VALID [2022-04-07 18:49:15,134 INFO L290 TraceCheckUtils]: 16: Hoare triple {624#(< (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] {643#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} is VALID [2022-04-07 18:49:15,134 INFO L290 TraceCheckUtils]: 17: Hoare triple {643#(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] {643#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} is VALID [2022-04-07 18:49:15,135 INFO L290 TraceCheckUtils]: 18: Hoare triple {643#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {643#(and (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} is VALID [2022-04-07 18:49:15,135 INFO L290 TraceCheckUtils]: 19: Hoare triple {643#(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[] {653#(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-07 18:49:15,136 INFO L290 TraceCheckUtils]: 20: Hoare triple {653#(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] {653#(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-07 18:49:15,136 INFO L290 TraceCheckUtils]: 21: Hoare triple {653#(and (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= main_~A~0 main_~r~0) (= main_~q~0 0) (< (mod main_~b~0 4294967296) 2147483647))} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 20) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {653#(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-07 18:49:15,137 INFO L272 TraceCheckUtils]: 22: Hoare triple {653#(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] {663#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:49:15,138 INFO L290 TraceCheckUtils]: 23: Hoare triple {663#(<= 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] {667#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:49:15,138 INFO L290 TraceCheckUtils]: 24: Hoare triple {667#(<= 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[] {588#false} is VALID [2022-04-07 18:49:15,138 INFO L290 TraceCheckUtils]: 25: Hoare triple {588#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {588#false} is VALID [2022-04-07 18:49:15,139 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-07 18:49:15,139 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:49:15,435 INFO L290 TraceCheckUtils]: 25: Hoare triple {588#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {588#false} is VALID [2022-04-07 18:49:15,435 INFO L290 TraceCheckUtils]: 24: Hoare triple {667#(<= 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[] {588#false} is VALID [2022-04-07 18:49:15,436 INFO L290 TraceCheckUtils]: 23: Hoare triple {663#(<= 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] {667#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:49:15,437 INFO L272 TraceCheckUtils]: 22: Hoare triple {683#(= (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] {663#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:49:15,437 INFO L290 TraceCheckUtils]: 21: Hoare triple {683#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 20) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {683#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-07 18:49:15,437 INFO L290 TraceCheckUtils]: 20: Hoare triple {683#(= (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] {683#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-07 18:49:15,438 INFO L290 TraceCheckUtils]: 19: Hoare triple {693#(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[] {683#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-07 18:49:15,438 INFO L290 TraceCheckUtils]: 18: Hoare triple {693#(or (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)) (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)))} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {693#(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-07 18:49:15,439 INFO L290 TraceCheckUtils]: 17: Hoare triple {693#(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] {693#(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-07 18:49:15,439 INFO L290 TraceCheckUtils]: 16: Hoare triple {587#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] {693#(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-07 18:49:15,440 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {587#true} {587#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] {587#true} is VALID [2022-04-07 18:49:15,440 INFO L290 TraceCheckUtils]: 14: Hoare triple {587#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {587#true} is VALID [2022-04-07 18:49:15,440 INFO L290 TraceCheckUtils]: 13: Hoare triple {587#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[] {587#true} is VALID [2022-04-07 18:49:15,440 INFO L290 TraceCheckUtils]: 12: Hoare triple {587#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] {587#true} is VALID [2022-04-07 18:49:15,440 INFO L272 TraceCheckUtils]: 11: Hoare triple {587#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] {587#true} is VALID [2022-04-07 18:49:15,440 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {587#true} {587#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] {587#true} is VALID [2022-04-07 18:49:15,440 INFO L290 TraceCheckUtils]: 9: Hoare triple {587#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {587#true} is VALID [2022-04-07 18:49:15,441 INFO L290 TraceCheckUtils]: 8: Hoare triple {587#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[] {587#true} is VALID [2022-04-07 18:49:15,441 INFO L290 TraceCheckUtils]: 7: Hoare triple {587#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] {587#true} is VALID [2022-04-07 18:49:15,441 INFO L272 TraceCheckUtils]: 6: Hoare triple {587#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] {587#true} is VALID [2022-04-07 18:49:15,441 INFO L290 TraceCheckUtils]: 5: Hoare triple {587#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] {587#true} is VALID [2022-04-07 18:49:15,441 INFO L272 TraceCheckUtils]: 4: Hoare triple {587#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {587#true} is VALID [2022-04-07 18:49:15,441 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {587#true} {587#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {587#true} is VALID [2022-04-07 18:49:15,441 INFO L290 TraceCheckUtils]: 2: Hoare triple {587#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {587#true} is VALID [2022-04-07 18:49:15,442 INFO L290 TraceCheckUtils]: 1: Hoare triple {587#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] {587#true} is VALID [2022-04-07 18:49:15,442 INFO L272 TraceCheckUtils]: 0: Hoare triple {587#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {587#true} is VALID [2022-04-07 18:49:15,442 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-07 18:49:15,442 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:49:15,442 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [335776832] [2022-04-07 18:49:15,442 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:49:15,443 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [673918683] [2022-04-07 18:49:15,443 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [673918683] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-07 18:49:15,443 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-07 18:49:15,443 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-07 18:49:15,443 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2096946752] [2022-04-07 18:49:15,443 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 18:49:15,443 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-07 18:49:15,444 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:49:15,444 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-07 18:49:15,462 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-07 18:49:15,462 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-07 18:49:15,463 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:49:15,463 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-07 18:49:15,463 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-07 18:49:15,463 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-07 18:49:16,903 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.20s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 18:49:18,984 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-07 18:49:19,135 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:19,135 INFO L93 Difference]: Finished difference Result 40 states and 48 transitions. [2022-04-07 18:49:19,135 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 18:49:19,136 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-07 18:49:19,136 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:49:19,136 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-07 18:49:19,137 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 49 transitions. [2022-04-07 18:49:19,137 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-07 18:49:19,138 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 49 transitions. [2022-04-07 18:49:19,138 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 49 transitions. [2022-04-07 18:49:19,189 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:49:19,190 INFO L225 Difference]: With dead ends: 40 [2022-04-07 18:49:19,190 INFO L226 Difference]: Without dead ends: 39 [2022-04-07 18:49:19,191 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-07 18:49:19,191 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 12 mSDsluCounter, 75 mSDsCounter, 0 mSdLazyCounter, 36 mSolverCounterSat, 3 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 104 SdHoareTripleChecker+Invalid, 40 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 36 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.3s IncrementalHoareTripleChecker+Time [2022-04-07 18:49:19,191 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 104 Invalid, 40 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 36 Invalid, 1 Unknown, 0 Unchecked, 3.3s Time] [2022-04-07 18:49:19,192 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2022-04-07 18:49:19,194 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 39. [2022-04-07 18:49:19,194 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:49:19,194 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-07 18:49:19,194 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-07 18:49:19,194 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-07 18:49:19,196 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:19,196 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-07 18:49:19,196 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-07 18:49:19,196 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:19,196 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:19,197 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-07 18:49:19,197 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-07 18:49:19,198 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:19,198 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-07 18:49:19,198 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-07 18:49:19,198 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:19,198 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:19,198 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:49:19,199 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:49:19,199 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-07 18:49:19,200 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 46 transitions. [2022-04-07 18:49:19,200 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 46 transitions. Word has length 26 [2022-04-07 18:49:19,200 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:49:19,200 INFO L478 AbstractCegarLoop]: Abstraction has 39 states and 46 transitions. [2022-04-07 18:49:19,200 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-07 18:49:19,200 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-07 18:49:19,201 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-07 18:49:19,201 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:49:19,201 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-07 18:49:19,220 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-07 18:49:19,418 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-07 18:49:19,418 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:49:19,419 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:49:19,419 INFO L85 PathProgramCache]: Analyzing trace with hash -1664227005, now seen corresponding path program 1 times [2022-04-07 18:49:19,419 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:49:19,419 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [707965115] [2022-04-07 18:49:19,419 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:19,419 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:49:19,439 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:49:19,439 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1271985610] [2022-04-07 18:49:19,439 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:19,439 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:49:19,439 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:49:19,440 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-07 18:49:19,468 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-07 18:49:19,513 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:19,514 INFO L263 TraceCheckSpWp]: Trace formula consists of 98 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 18:49:19,521 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:19,522 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:49:19,680 INFO L272 TraceCheckUtils]: 0: Hoare triple {912#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {912#true} is VALID [2022-04-07 18:49:19,681 INFO L290 TraceCheckUtils]: 1: Hoare triple {912#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] {920#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:19,682 INFO L290 TraceCheckUtils]: 2: Hoare triple {920#(<= ~counter~0 0)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {920#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:19,682 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {920#(<= ~counter~0 0)} {912#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {920#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:19,683 INFO L272 TraceCheckUtils]: 4: Hoare triple {920#(<= ~counter~0 0)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {920#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:19,683 INFO L290 TraceCheckUtils]: 5: Hoare triple {920#(<= ~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] {920#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:19,683 INFO L272 TraceCheckUtils]: 6: Hoare triple {920#(<= ~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] {920#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:19,684 INFO L290 TraceCheckUtils]: 7: Hoare triple {920#(<= ~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] {920#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:19,684 INFO L290 TraceCheckUtils]: 8: Hoare triple {920#(<= ~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[] {920#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:19,684 INFO L290 TraceCheckUtils]: 9: Hoare triple {920#(<= ~counter~0 0)} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {920#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:19,685 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {920#(<= ~counter~0 0)} {920#(<= ~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] {920#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:19,685 INFO L272 TraceCheckUtils]: 11: Hoare triple {920#(<= ~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] {920#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:19,686 INFO L290 TraceCheckUtils]: 12: Hoare triple {920#(<= ~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] {920#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:19,686 INFO L290 TraceCheckUtils]: 13: Hoare triple {920#(<= ~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[] {920#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:19,686 INFO L290 TraceCheckUtils]: 14: Hoare triple {920#(<= ~counter~0 0)} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {920#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:19,687 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {920#(<= ~counter~0 0)} {920#(<= ~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] {920#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:19,687 INFO L290 TraceCheckUtils]: 16: Hoare triple {920#(<= ~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] {920#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:19,688 INFO L290 TraceCheckUtils]: 17: Hoare triple {920#(<= ~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] {969#(<= ~counter~0 1)} is VALID [2022-04-07 18:49:19,688 INFO L290 TraceCheckUtils]: 18: Hoare triple {969#(<= ~counter~0 1)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {969#(<= ~counter~0 1)} is VALID [2022-04-07 18:49:19,689 INFO L290 TraceCheckUtils]: 19: Hoare triple {969#(<= ~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] {969#(<= ~counter~0 1)} is VALID [2022-04-07 18:49:19,689 INFO L290 TraceCheckUtils]: 20: Hoare triple {969#(<= ~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] {979#(<= |main_#t~post3| 1)} is VALID [2022-04-07 18:49:19,690 INFO L290 TraceCheckUtils]: 21: Hoare triple {979#(<= |main_#t~post3| 1)} [109] L36-1-->L45-2: Formula: (not (< |v_main_#t~post3_3| 20)) InVars {main_#t~post3=|v_main_#t~post3_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {913#false} is VALID [2022-04-07 18:49:19,690 INFO L290 TraceCheckUtils]: 22: Hoare triple {913#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] {913#false} is VALID [2022-04-07 18:49:19,690 INFO L290 TraceCheckUtils]: 23: Hoare triple {913#false} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 20)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {913#false} is VALID [2022-04-07 18:49:19,690 INFO L272 TraceCheckUtils]: 24: Hoare triple {913#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] {913#false} is VALID [2022-04-07 18:49:19,690 INFO L290 TraceCheckUtils]: 25: Hoare triple {913#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] {913#false} is VALID [2022-04-07 18:49:19,690 INFO L290 TraceCheckUtils]: 26: Hoare triple {913#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[] {913#false} is VALID [2022-04-07 18:49:19,690 INFO L290 TraceCheckUtils]: 27: Hoare triple {913#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {913#false} is VALID [2022-04-07 18:49:19,691 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-07 18:49:19,691 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:49:19,873 INFO L290 TraceCheckUtils]: 27: Hoare triple {913#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {913#false} is VALID [2022-04-07 18:49:19,874 INFO L290 TraceCheckUtils]: 26: Hoare triple {913#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[] {913#false} is VALID [2022-04-07 18:49:19,874 INFO L290 TraceCheckUtils]: 25: Hoare triple {913#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] {913#false} is VALID [2022-04-07 18:49:19,874 INFO L272 TraceCheckUtils]: 24: Hoare triple {913#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] {913#false} is VALID [2022-04-07 18:49:19,874 INFO L290 TraceCheckUtils]: 23: Hoare triple {913#false} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 20)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {913#false} is VALID [2022-04-07 18:49:19,874 INFO L290 TraceCheckUtils]: 22: Hoare triple {913#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] {913#false} is VALID [2022-04-07 18:49:19,874 INFO L290 TraceCheckUtils]: 21: Hoare triple {1019#(< |main_#t~post3| 20)} [109] L36-1-->L45-2: Formula: (not (< |v_main_#t~post3_3| 20)) InVars {main_#t~post3=|v_main_#t~post3_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {913#false} is VALID [2022-04-07 18:49:19,875 INFO L290 TraceCheckUtils]: 20: Hoare triple {1023#(< ~counter~0 20)} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {1019#(< |main_#t~post3| 20)} is VALID [2022-04-07 18:49:19,875 INFO L290 TraceCheckUtils]: 19: Hoare triple {1023#(< ~counter~0 20)} [115] L37-->L36-3: Formula: (and (<= (mod v_main_~b~0_2 4294967296) (mod v_main_~r~0_1 4294967296)) (= v_main_~b~0_1 (* v_main_~b~0_2 2))) InVars {main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_1} OutVars{main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~b~0] {1023#(< ~counter~0 20)} is VALID [2022-04-07 18:49:19,876 INFO L290 TraceCheckUtils]: 18: Hoare triple {1023#(< ~counter~0 20)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1023#(< ~counter~0 20)} is VALID [2022-04-07 18:49:19,876 INFO L290 TraceCheckUtils]: 17: Hoare triple {1033#(< ~counter~0 19)} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {1023#(< ~counter~0 20)} is VALID [2022-04-07 18:49:19,876 INFO L290 TraceCheckUtils]: 16: Hoare triple {1033#(< ~counter~0 19)} [101] L32-->L36-3: Formula: (and (= v_main_~A~0_5 v_main_~r~0_4) (= v_main_~B~0_7 v_main_~b~0_6) (= v_main_~q~0_3 0)) InVars {main_~A~0=v_main_~A~0_5, main_~B~0=v_main_~B~0_7} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_7, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_5, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0] {1033#(< ~counter~0 19)} is VALID [2022-04-07 18:49:19,877 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {912#true} {1033#(< ~counter~0 19)} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1033#(< ~counter~0 19)} is VALID [2022-04-07 18:49:19,877 INFO L290 TraceCheckUtils]: 14: Hoare triple {912#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {912#true} is VALID [2022-04-07 18:49:19,877 INFO L290 TraceCheckUtils]: 13: Hoare triple {912#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[] {912#true} is VALID [2022-04-07 18:49:19,877 INFO L290 TraceCheckUtils]: 12: Hoare triple {912#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] {912#true} is VALID [2022-04-07 18:49:19,877 INFO L272 TraceCheckUtils]: 11: Hoare triple {1033#(< ~counter~0 19)} [99] L31-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {912#true} is VALID [2022-04-07 18:49:19,878 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {912#true} {1033#(< ~counter~0 19)} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1033#(< ~counter~0 19)} is VALID [2022-04-07 18:49:19,878 INFO L290 TraceCheckUtils]: 9: Hoare triple {912#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {912#true} is VALID [2022-04-07 18:49:19,878 INFO L290 TraceCheckUtils]: 8: Hoare triple {912#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[] {912#true} is VALID [2022-04-07 18:49:19,878 INFO L290 TraceCheckUtils]: 7: Hoare triple {912#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] {912#true} is VALID [2022-04-07 18:49:19,878 INFO L272 TraceCheckUtils]: 6: Hoare triple {1033#(< ~counter~0 19)} [98] L31-->assume_abort_if_notENTRY: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {912#true} is VALID [2022-04-07 18:49:19,879 INFO L290 TraceCheckUtils]: 5: Hoare triple {1033#(< ~counter~0 19)} [96] mainENTRY-->L31: Formula: (and (= v_main_~B~0_1 |v_main_#t~nondet2_2|) (= v_main_~A~0_2 |v_main_#t~nondet1_2|)) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_1, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_#t~nondet2, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {1033#(< ~counter~0 19)} is VALID [2022-04-07 18:49:19,879 INFO L272 TraceCheckUtils]: 4: Hoare triple {1033#(< ~counter~0 19)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1033#(< ~counter~0 19)} is VALID [2022-04-07 18:49:19,880 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1033#(< ~counter~0 19)} {912#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1033#(< ~counter~0 19)} is VALID [2022-04-07 18:49:19,880 INFO L290 TraceCheckUtils]: 2: Hoare triple {1033#(< ~counter~0 19)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1033#(< ~counter~0 19)} is VALID [2022-04-07 18:49:19,880 INFO L290 TraceCheckUtils]: 1: Hoare triple {912#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] {1033#(< ~counter~0 19)} is VALID [2022-04-07 18:49:19,881 INFO L272 TraceCheckUtils]: 0: Hoare triple {912#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {912#true} is VALID [2022-04-07 18:49:19,881 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-07 18:49:19,881 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:49:19,881 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [707965115] [2022-04-07 18:49:19,881 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:49:19,881 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1271985610] [2022-04-07 18:49:19,881 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1271985610] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 18:49:19,881 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 18:49:19,881 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-07 18:49:19,882 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [986078499] [2022-04-07 18:49:19,882 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 18:49:19,882 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-07 18:49:19,882 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:49:19,883 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-07 18:49:19,913 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-07 18:49:19,913 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-07 18:49:19,913 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:49:19,914 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-07 18:49:19,914 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-07 18:49:19,914 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-07 18:49:20,118 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:20,118 INFO L93 Difference]: Finished difference Result 61 states and 74 transitions. [2022-04-07 18:49:20,118 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-07 18:49:20,118 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-07 18:49:20,118 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:49:20,119 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-07 18:49:20,120 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 77 transitions. [2022-04-07 18:49:20,121 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-07 18:49:20,122 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 77 transitions. [2022-04-07 18:49:20,122 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 77 transitions. [2022-04-07 18:49:20,180 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:49:20,182 INFO L225 Difference]: With dead ends: 61 [2022-04-07 18:49:20,182 INFO L226 Difference]: Without dead ends: 61 [2022-04-07 18:49:20,182 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 49 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-04-07 18:49:20,183 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 41 mSDsluCounter, 116 mSDsCounter, 0 mSdLazyCounter, 30 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 149 SdHoareTripleChecker+Invalid, 50 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 30 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 18:49:20,183 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 149 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 30 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 18:49:20,183 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states. [2022-04-07 18:49:20,186 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 47. [2022-04-07 18:49:20,186 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:49:20,186 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-07 18:49:20,186 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-07 18:49:20,187 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-07 18:49:20,189 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:20,189 INFO L93 Difference]: Finished difference Result 61 states and 74 transitions. [2022-04-07 18:49:20,189 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 74 transitions. [2022-04-07 18:49:20,189 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:20,189 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:20,189 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-07 18:49:20,190 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-07 18:49:20,191 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:20,191 INFO L93 Difference]: Finished difference Result 61 states and 74 transitions. [2022-04-07 18:49:20,192 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 74 transitions. [2022-04-07 18:49:20,192 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:20,192 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:20,192 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:49:20,192 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:49:20,192 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-07 18:49:20,194 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 56 transitions. [2022-04-07 18:49:20,194 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 56 transitions. Word has length 28 [2022-04-07 18:49:20,194 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:49:20,194 INFO L478 AbstractCegarLoop]: Abstraction has 47 states and 56 transitions. [2022-04-07 18:49:20,194 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-07 18:49:20,194 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 56 transitions. [2022-04-07 18:49:20,195 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-07 18:49:20,195 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:49:20,195 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-07 18:49:20,216 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-07 18:49:20,395 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-07 18:49:20,395 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:49:20,396 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:49:20,396 INFO L85 PathProgramCache]: Analyzing trace with hash -1687306486, now seen corresponding path program 1 times [2022-04-07 18:49:20,396 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:49:20,396 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [795623896] [2022-04-07 18:49:20,396 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:20,396 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:49:20,409 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:49:20,410 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [759093681] [2022-04-07 18:49:20,410 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:20,410 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:49:20,410 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:49:20,421 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-07 18:49:20,422 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-07 18:49:20,458 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:20,459 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 18:49:20,466 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:20,468 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:49:20,626 INFO L272 TraceCheckUtils]: 0: Hoare triple {1323#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1323#true} is VALID [2022-04-07 18:49:20,627 INFO L290 TraceCheckUtils]: 1: Hoare triple {1323#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] {1331#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:20,627 INFO L290 TraceCheckUtils]: 2: Hoare triple {1331#(<= ~counter~0 0)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1331#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:20,628 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1331#(<= ~counter~0 0)} {1323#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1331#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:20,628 INFO L272 TraceCheckUtils]: 4: Hoare triple {1331#(<= ~counter~0 0)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1331#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:20,628 INFO L290 TraceCheckUtils]: 5: Hoare triple {1331#(<= ~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] {1331#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:20,632 INFO L272 TraceCheckUtils]: 6: Hoare triple {1331#(<= ~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] {1331#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:20,633 INFO L290 TraceCheckUtils]: 7: Hoare triple {1331#(<= ~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] {1331#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:20,633 INFO L290 TraceCheckUtils]: 8: Hoare triple {1331#(<= ~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[] {1331#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:20,633 INFO L290 TraceCheckUtils]: 9: Hoare triple {1331#(<= ~counter~0 0)} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1331#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:20,634 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1331#(<= ~counter~0 0)} {1331#(<= ~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] {1331#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:20,634 INFO L272 TraceCheckUtils]: 11: Hoare triple {1331#(<= ~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] {1331#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:20,634 INFO L290 TraceCheckUtils]: 12: Hoare triple {1331#(<= ~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] {1331#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:20,635 INFO L290 TraceCheckUtils]: 13: Hoare triple {1331#(<= ~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[] {1331#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:20,635 INFO L290 TraceCheckUtils]: 14: Hoare triple {1331#(<= ~counter~0 0)} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1331#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:20,635 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1331#(<= ~counter~0 0)} {1331#(<= ~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] {1331#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:20,636 INFO L290 TraceCheckUtils]: 16: Hoare triple {1331#(<= ~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] {1331#(<= ~counter~0 0)} is VALID [2022-04-07 18:49:20,636 INFO L290 TraceCheckUtils]: 17: Hoare triple {1331#(<= ~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] {1380#(<= ~counter~0 1)} is VALID [2022-04-07 18:49:20,637 INFO L290 TraceCheckUtils]: 18: Hoare triple {1380#(<= ~counter~0 1)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1380#(<= ~counter~0 1)} is VALID [2022-04-07 18:49:20,637 INFO L290 TraceCheckUtils]: 19: Hoare triple {1380#(<= ~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] {1380#(<= ~counter~0 1)} is VALID [2022-04-07 18:49:20,637 INFO L290 TraceCheckUtils]: 20: Hoare triple {1380#(<= ~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] {1390#(<= ~counter~0 2)} is VALID [2022-04-07 18:49:20,638 INFO L290 TraceCheckUtils]: 21: Hoare triple {1390#(<= ~counter~0 2)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1390#(<= ~counter~0 2)} is VALID [2022-04-07 18:49:20,638 INFO L290 TraceCheckUtils]: 22: Hoare triple {1390#(<= ~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[] {1390#(<= ~counter~0 2)} is VALID [2022-04-07 18:49:20,638 INFO L290 TraceCheckUtils]: 23: Hoare triple {1390#(<= ~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] {1400#(<= |main_#t~post4| 2)} is VALID [2022-04-07 18:49:20,638 INFO L290 TraceCheckUtils]: 24: Hoare triple {1400#(<= |main_#t~post4| 2)} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 20)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1324#false} is VALID [2022-04-07 18:49:20,639 INFO L272 TraceCheckUtils]: 25: Hoare triple {1324#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] {1324#false} is VALID [2022-04-07 18:49:20,639 INFO L290 TraceCheckUtils]: 26: Hoare triple {1324#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] {1324#false} is VALID [2022-04-07 18:49:20,639 INFO L290 TraceCheckUtils]: 27: Hoare triple {1324#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[] {1324#false} is VALID [2022-04-07 18:49:20,639 INFO L290 TraceCheckUtils]: 28: Hoare triple {1324#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1324#false} is VALID [2022-04-07 18:49:20,639 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-07 18:49:20,639 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:49:20,820 INFO L290 TraceCheckUtils]: 28: Hoare triple {1324#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1324#false} is VALID [2022-04-07 18:49:20,821 INFO L290 TraceCheckUtils]: 27: Hoare triple {1324#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[] {1324#false} is VALID [2022-04-07 18:49:20,821 INFO L290 TraceCheckUtils]: 26: Hoare triple {1324#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] {1324#false} is VALID [2022-04-07 18:49:20,821 INFO L272 TraceCheckUtils]: 25: Hoare triple {1324#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] {1324#false} is VALID [2022-04-07 18:49:20,821 INFO L290 TraceCheckUtils]: 24: Hoare triple {1428#(< |main_#t~post4| 20)} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 20)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1324#false} is VALID [2022-04-07 18:49:20,822 INFO L290 TraceCheckUtils]: 23: Hoare triple {1432#(< ~counter~0 20)} [108] L45-2-->L40: Formula: (and (= |v_main_#t~post4_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post4_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, ~counter~0=v_~counter~0_1} AuxVars[] AssignedVars[~counter~0, main_#t~post4] {1428#(< |main_#t~post4| 20)} is VALID [2022-04-07 18:49:20,822 INFO L290 TraceCheckUtils]: 22: Hoare triple {1432#(< ~counter~0 20)} [114] L37-->L45-2: Formula: (not (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296))) InVars {main_~b~0=v_main_~b~0_12, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_12, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1432#(< ~counter~0 20)} is VALID [2022-04-07 18:49:20,823 INFO L290 TraceCheckUtils]: 21: Hoare triple {1432#(< ~counter~0 20)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1432#(< ~counter~0 20)} is VALID [2022-04-07 18:49:20,823 INFO L290 TraceCheckUtils]: 20: Hoare triple {1442#(< ~counter~0 19)} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {1432#(< ~counter~0 20)} is VALID [2022-04-07 18:49:20,824 INFO L290 TraceCheckUtils]: 19: Hoare triple {1442#(< ~counter~0 19)} [115] L37-->L36-3: Formula: (and (<= (mod v_main_~b~0_2 4294967296) (mod v_main_~r~0_1 4294967296)) (= v_main_~b~0_1 (* v_main_~b~0_2 2))) InVars {main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_1} OutVars{main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~b~0] {1442#(< ~counter~0 19)} is VALID [2022-04-07 18:49:20,824 INFO L290 TraceCheckUtils]: 18: Hoare triple {1442#(< ~counter~0 19)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1442#(< ~counter~0 19)} is VALID [2022-04-07 18:49:20,825 INFO L290 TraceCheckUtils]: 17: Hoare triple {1452#(< ~counter~0 18)} [105] L36-3-->L36-1: Formula: (and (= (+ |v_main_#t~post3_1| 1) v_~counter~0_3) (= |v_main_#t~post3_1| v_~counter~0_4)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post3=|v_main_#t~post3_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post3] {1442#(< ~counter~0 19)} is VALID [2022-04-07 18:49:20,825 INFO L290 TraceCheckUtils]: 16: Hoare triple {1452#(< ~counter~0 18)} [101] L32-->L36-3: Formula: (and (= v_main_~A~0_5 v_main_~r~0_4) (= v_main_~B~0_7 v_main_~b~0_6) (= v_main_~q~0_3 0)) InVars {main_~A~0=v_main_~A~0_5, main_~B~0=v_main_~B~0_7} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_7, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_5, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0] {1452#(< ~counter~0 18)} is VALID [2022-04-07 18:49:20,825 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1323#true} {1452#(< ~counter~0 18)} [131] assume_abort_if_notEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1452#(< ~counter~0 18)} is VALID [2022-04-07 18:49:20,825 INFO L290 TraceCheckUtils]: 14: Hoare triple {1323#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1323#true} is VALID [2022-04-07 18:49:20,826 INFO L290 TraceCheckUtils]: 13: Hoare triple {1323#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[] {1323#true} is VALID [2022-04-07 18:49:20,826 INFO L290 TraceCheckUtils]: 12: Hoare triple {1323#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] {1323#true} is VALID [2022-04-07 18:49:20,826 INFO L272 TraceCheckUtils]: 11: Hoare triple {1452#(< ~counter~0 18)} [99] L31-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 (mod v_main_~B~0_10 4294967296)) 1 0) |v_assume_abort_if_not_#in~condInParam_2|) InVars {main_~B~0=v_main_~B~0_10} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1323#true} is VALID [2022-04-07 18:49:20,827 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1323#true} {1452#(< ~counter~0 18)} [130] assume_abort_if_notEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1452#(< ~counter~0 18)} is VALID [2022-04-07 18:49:20,827 INFO L290 TraceCheckUtils]: 9: Hoare triple {1323#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1323#true} is VALID [2022-04-07 18:49:20,827 INFO L290 TraceCheckUtils]: 8: Hoare triple {1323#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[] {1323#true} is VALID [2022-04-07 18:49:20,827 INFO L290 TraceCheckUtils]: 7: Hoare triple {1323#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] {1323#true} is VALID [2022-04-07 18:49:20,827 INFO L272 TraceCheckUtils]: 6: Hoare triple {1452#(< ~counter~0 18)} [98] L31-->assume_abort_if_notENTRY: Formula: (= (ite (< (mod v_main_~B~0_9 4294967296) 2147483647) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~B~0=v_main_~B~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~B~0, assume_abort_if_not_#in~cond] {1323#true} is VALID [2022-04-07 18:49:20,827 INFO L290 TraceCheckUtils]: 5: Hoare triple {1452#(< ~counter~0 18)} [96] mainENTRY-->L31: Formula: (and (= v_main_~B~0_1 |v_main_#t~nondet2_2|) (= v_main_~A~0_2 |v_main_#t~nondet1_2|)) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_1, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_#t~nondet2, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {1452#(< ~counter~0 18)} is VALID [2022-04-07 18:49:20,828 INFO L272 TraceCheckUtils]: 4: Hoare triple {1452#(< ~counter~0 18)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1452#(< ~counter~0 18)} is VALID [2022-04-07 18:49:20,828 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1452#(< ~counter~0 18)} {1323#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1452#(< ~counter~0 18)} is VALID [2022-04-07 18:49:20,829 INFO L290 TraceCheckUtils]: 2: Hoare triple {1452#(< ~counter~0 18)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1452#(< ~counter~0 18)} is VALID [2022-04-07 18:49:20,832 INFO L290 TraceCheckUtils]: 1: Hoare triple {1323#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] {1452#(< ~counter~0 18)} is VALID [2022-04-07 18:49:20,833 INFO L272 TraceCheckUtils]: 0: Hoare triple {1323#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1323#true} is VALID [2022-04-07 18:49:20,835 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-07 18:49:20,835 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:49:20,835 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [795623896] [2022-04-07 18:49:20,835 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:49:20,835 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [759093681] [2022-04-07 18:49:20,835 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [759093681] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 18:49:20,835 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 18:49:20,835 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-07 18:49:20,835 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [811926119] [2022-04-07 18:49:20,836 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 18:49:20,836 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 29 [2022-04-07 18:49:20,838 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:49:20,838 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-07 18:49:20,879 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-07 18:49:20,879 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-07 18:49:20,879 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:49:20,881 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-07 18:49:20,881 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-07 18:49:20,882 INFO L87 Difference]: Start difference. First operand 47 states and 56 transitions. Second operand has 10 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-07 18:49:21,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:21,327 INFO L93 Difference]: Finished difference Result 91 states and 110 transitions. [2022-04-07 18:49:21,328 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-07 18:49:21,328 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 29 [2022-04-07 18:49:21,328 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:49:21,328 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-07 18:49:21,330 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 114 transitions. [2022-04-07 18:49:21,330 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-07 18:49:21,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 114 transitions. [2022-04-07 18:49:21,333 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 114 transitions. [2022-04-07 18:49:21,422 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 114 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:49:21,423 INFO L225 Difference]: With dead ends: 91 [2022-04-07 18:49:21,423 INFO L226 Difference]: Without dead ends: 91 [2022-04-07 18:49:21,424 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 61 GetRequests, 49 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=63, Invalid=119, Unknown=0, NotChecked=0, Total=182 [2022-04-07 18:49:21,424 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 108 mSDsluCounter, 139 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 108 SdHoareTripleChecker+Valid, 174 SdHoareTripleChecker+Invalid, 86 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 18:49:21,424 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [108 Valid, 174 Invalid, 86 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 18:49:21,425 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2022-04-07 18:49:21,430 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 84. [2022-04-07 18:49:21,430 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:49:21,431 INFO L82 GeneralOperation]: Start isEquivalent. First operand 91 states. Second operand has 84 states, 63 states have (on average 1.3492063492063493) internal successors, (85), 67 states have internal predecessors, (85), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 18:49:21,431 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand has 84 states, 63 states have (on average 1.3492063492063493) internal successors, (85), 67 states have internal predecessors, (85), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 18:49:21,431 INFO L87 Difference]: Start difference. First operand 91 states. Second operand has 84 states, 63 states have (on average 1.3492063492063493) internal successors, (85), 67 states have internal predecessors, (85), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 18:49:21,433 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:21,434 INFO L93 Difference]: Finished difference Result 91 states and 110 transitions. [2022-04-07 18:49:21,434 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 110 transitions. [2022-04-07 18:49:21,434 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:21,434 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:21,434 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 63 states have (on average 1.3492063492063493) internal successors, (85), 67 states have internal predecessors, (85), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 91 states. [2022-04-07 18:49:21,435 INFO L87 Difference]: Start difference. First operand has 84 states, 63 states have (on average 1.3492063492063493) internal successors, (85), 67 states have internal predecessors, (85), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 91 states. [2022-04-07 18:49:21,437 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:21,437 INFO L93 Difference]: Finished difference Result 91 states and 110 transitions. [2022-04-07 18:49:21,437 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 110 transitions. [2022-04-07 18:49:21,438 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:21,438 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:21,438 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:49:21,438 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:49:21,438 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 63 states have (on average 1.3492063492063493) internal successors, (85), 67 states have internal predecessors, (85), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 18:49:21,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 106 transitions. [2022-04-07 18:49:21,440 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 106 transitions. Word has length 29 [2022-04-07 18:49:21,440 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:49:21,440 INFO L478 AbstractCegarLoop]: Abstraction has 84 states and 106 transitions. [2022-04-07 18:49:21,441 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 3.3) internal successors, (33), 10 states have internal predecessors, (33), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-07 18:49:21,441 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 106 transitions. [2022-04-07 18:49:21,441 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-07 18:49:21,441 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:49:21,441 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-07 18:49:21,458 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-07 18:49:21,658 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-07 18:49:21,659 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:49:21,659 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:49:21,659 INFO L85 PathProgramCache]: Analyzing trace with hash -1686174428, now seen corresponding path program 1 times [2022-04-07 18:49:21,659 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:49:21,659 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2097552378] [2022-04-07 18:49:21,659 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:21,659 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:49:21,672 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:49:21,672 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1347339165] [2022-04-07 18:49:21,672 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:21,673 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:49:21,673 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:49:21,674 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-07 18:49:21,675 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-07 18:49:21,710 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:21,711 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-07 18:49:21,721 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:21,722 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:49:22,249 INFO L272 TraceCheckUtils]: 0: Hoare triple {1871#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1871#true} is VALID [2022-04-07 18:49:22,249 INFO L290 TraceCheckUtils]: 1: Hoare triple {1871#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] {1871#true} is VALID [2022-04-07 18:49:22,249 INFO L290 TraceCheckUtils]: 2: Hoare triple {1871#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1871#true} is VALID [2022-04-07 18:49:22,249 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1871#true} {1871#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1871#true} is VALID [2022-04-07 18:49:22,249 INFO L272 TraceCheckUtils]: 4: Hoare triple {1871#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1871#true} is VALID [2022-04-07 18:49:22,249 INFO L290 TraceCheckUtils]: 5: Hoare triple {1871#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] {1871#true} is VALID [2022-04-07 18:49:22,250 INFO L272 TraceCheckUtils]: 6: Hoare triple {1871#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] {1871#true} is VALID [2022-04-07 18:49:22,250 INFO L290 TraceCheckUtils]: 7: Hoare triple {1871#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] {1871#true} is VALID [2022-04-07 18:49:22,250 INFO L290 TraceCheckUtils]: 8: Hoare triple {1871#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[] {1871#true} is VALID [2022-04-07 18:49:22,250 INFO L290 TraceCheckUtils]: 9: Hoare triple {1871#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1871#true} is VALID [2022-04-07 18:49:22,250 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1871#true} {1871#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] {1871#true} is VALID [2022-04-07 18:49:22,250 INFO L272 TraceCheckUtils]: 11: Hoare triple {1871#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] {1871#true} is VALID [2022-04-07 18:49:22,251 INFO L290 TraceCheckUtils]: 12: Hoare triple {1871#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] {1912#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 18:49:22,251 INFO L290 TraceCheckUtils]: 13: Hoare triple {1912#(= 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[] {1916#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:49:22,252 INFO L290 TraceCheckUtils]: 14: Hoare triple {1916#(not (= |assume_abort_if_not_#in~cond| 0))} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1916#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:49:22,252 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1916#(not (= |assume_abort_if_not_#in~cond| 0))} {1871#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] {1923#(<= 1 (mod main_~B~0 4294967296))} is VALID [2022-04-07 18:49:22,253 INFO L290 TraceCheckUtils]: 16: Hoare triple {1923#(<= 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] {1927#(and (= main_~A~0 main_~r~0) (<= 1 (mod main_~b~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-07 18:49:22,253 INFO L290 TraceCheckUtils]: 17: Hoare triple {1927#(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] {1927#(and (= main_~A~0 main_~r~0) (<= 1 (mod main_~b~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-07 18:49:22,253 INFO L290 TraceCheckUtils]: 18: Hoare triple {1927#(and (= main_~A~0 main_~r~0) (<= 1 (mod main_~b~0 4294967296)) (= main_~q~0 0))} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1927#(and (= main_~A~0 main_~r~0) (<= 1 (mod main_~b~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-07 18:49:22,254 INFO L290 TraceCheckUtils]: 19: Hoare triple {1927#(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] {1937#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} is VALID [2022-04-07 18:49:22,255 INFO L290 TraceCheckUtils]: 20: Hoare triple {1937#(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] {1937#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} is VALID [2022-04-07 18:49:22,255 INFO L290 TraceCheckUtils]: 21: Hoare triple {1937#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1937#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} is VALID [2022-04-07 18:49:22,256 INFO L290 TraceCheckUtils]: 22: Hoare triple {1937#(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[] {1937#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} is VALID [2022-04-07 18:49:22,256 INFO L290 TraceCheckUtils]: 23: Hoare triple {1937#(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] {1937#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} is VALID [2022-04-07 18:49:22,256 INFO L290 TraceCheckUtils]: 24: Hoare triple {1937#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 20) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1937#(and (= main_~A~0 main_~r~0) (< (div (+ (- 1) (mod main_~r~0 4294967296)) (- 4294967296)) 1) (= main_~q~0 0))} is VALID [2022-04-07 18:49:22,257 INFO L272 TraceCheckUtils]: 25: Hoare triple {1937#(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] {1956#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:49:22,257 INFO L290 TraceCheckUtils]: 26: Hoare triple {1956#(<= 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] {1960#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:49:22,258 INFO L290 TraceCheckUtils]: 27: Hoare triple {1960#(<= 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[] {1872#false} is VALID [2022-04-07 18:49:22,258 INFO L290 TraceCheckUtils]: 28: Hoare triple {1872#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1872#false} is VALID [2022-04-07 18:49:22,258 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-07 18:49:22,258 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:49:22,855 INFO L290 TraceCheckUtils]: 28: Hoare triple {1872#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1872#false} is VALID [2022-04-07 18:49:22,855 INFO L290 TraceCheckUtils]: 27: Hoare triple {1960#(<= 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[] {1872#false} is VALID [2022-04-07 18:49:22,856 INFO L290 TraceCheckUtils]: 26: Hoare triple {1956#(<= 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] {1960#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:49:22,857 INFO L272 TraceCheckUtils]: 25: Hoare triple {1976#(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] {1956#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:49:22,857 INFO L290 TraceCheckUtils]: 24: Hoare triple {1976#(forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)))} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 20) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1976#(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-07 18:49:22,858 INFO L290 TraceCheckUtils]: 23: Hoare triple {1976#(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] {1976#(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-07 18:49:22,858 INFO L290 TraceCheckUtils]: 22: Hoare triple {1976#(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[] {1976#(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-07 18:49:22,859 INFO L290 TraceCheckUtils]: 21: Hoare triple {1976#(forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296)))} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1976#(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-07 18:49:22,859 INFO L290 TraceCheckUtils]: 20: Hoare triple {1976#(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] {1976#(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-07 18:49:22,860 INFO L290 TraceCheckUtils]: 19: Hoare triple {1995#(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] {1976#(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-07 18:49:22,860 INFO L290 TraceCheckUtils]: 18: Hoare triple {1995#(or (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (forall ((main_~b~0 Int)) (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))))} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1995#(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-07 18:49:22,861 INFO L290 TraceCheckUtils]: 17: Hoare triple {1995#(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] {1995#(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-07 18:49:22,862 INFO L290 TraceCheckUtils]: 16: Hoare triple {1871#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] {1995#(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-07 18:49:22,862 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1871#true} {1871#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] {1871#true} is VALID [2022-04-07 18:49:22,862 INFO L290 TraceCheckUtils]: 14: Hoare triple {1871#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1871#true} is VALID [2022-04-07 18:49:22,862 INFO L290 TraceCheckUtils]: 13: Hoare triple {1871#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[] {1871#true} is VALID [2022-04-07 18:49:22,862 INFO L290 TraceCheckUtils]: 12: Hoare triple {1871#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] {1871#true} is VALID [2022-04-07 18:49:22,862 INFO L272 TraceCheckUtils]: 11: Hoare triple {1871#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] {1871#true} is VALID [2022-04-07 18:49:22,862 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1871#true} {1871#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] {1871#true} is VALID [2022-04-07 18:49:22,862 INFO L290 TraceCheckUtils]: 9: Hoare triple {1871#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1871#true} is VALID [2022-04-07 18:49:22,863 INFO L290 TraceCheckUtils]: 8: Hoare triple {1871#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[] {1871#true} is VALID [2022-04-07 18:49:22,863 INFO L290 TraceCheckUtils]: 7: Hoare triple {1871#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] {1871#true} is VALID [2022-04-07 18:49:22,863 INFO L272 TraceCheckUtils]: 6: Hoare triple {1871#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] {1871#true} is VALID [2022-04-07 18:49:22,863 INFO L290 TraceCheckUtils]: 5: Hoare triple {1871#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] {1871#true} is VALID [2022-04-07 18:49:22,863 INFO L272 TraceCheckUtils]: 4: Hoare triple {1871#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1871#true} is VALID [2022-04-07 18:49:22,863 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1871#true} {1871#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1871#true} is VALID [2022-04-07 18:49:22,863 INFO L290 TraceCheckUtils]: 2: Hoare triple {1871#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1871#true} is VALID [2022-04-07 18:49:22,863 INFO L290 TraceCheckUtils]: 1: Hoare triple {1871#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] {1871#true} is VALID [2022-04-07 18:49:22,863 INFO L272 TraceCheckUtils]: 0: Hoare triple {1871#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1871#true} is VALID [2022-04-07 18:49:22,864 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-07 18:49:22,864 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:49:22,864 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2097552378] [2022-04-07 18:49:22,864 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:49:22,864 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1347339165] [2022-04-07 18:49:22,864 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1347339165] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-07 18:49:22,864 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-07 18:49:22,864 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-07 18:49:22,864 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [849248250] [2022-04-07 18:49:22,864 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 18:49:22,865 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-07 18:49:22,865 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:49:22,865 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-07 18:49:24,910 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 25 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 18:49:24,910 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-07 18:49:24,910 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:49:24,910 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-07 18:49:24,911 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=86, Unknown=0, NotChecked=0, Total=110 [2022-04-07 18:49:24,911 INFO L87 Difference]: Start difference. First operand 84 states and 106 transitions. Second operand has 6 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-07 18:49:25,100 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:25,100 INFO L93 Difference]: Finished difference Result 115 states and 138 transitions. [2022-04-07 18:49:25,100 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-07 18:49:25,100 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-07 18:49:25,101 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:49:25,101 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-07 18:49:25,102 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2022-04-07 18:49:25,102 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-07 18:49:25,104 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2022-04-07 18:49:25,104 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 48 transitions. [2022-04-07 18:49:25,292 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-07 18:49:25,294 INFO L225 Difference]: With dead ends: 115 [2022-04-07 18:49:25,294 INFO L226 Difference]: Without dead ends: 115 [2022-04-07 18:49:25,295 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-07 18:49:25,295 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-07 18:49:25,296 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-07 18:49:25,296 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 115 states. [2022-04-07 18:49:25,300 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 115 to 114. [2022-04-07 18:49:25,300 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:49:25,301 INFO L82 GeneralOperation]: Start isEquivalent. First operand 115 states. Second operand has 114 states, 85 states have (on average 1.2705882352941176) internal successors, (108), 93 states have internal predecessors, (108), 17 states have call successors, (17), 12 states have call predecessors, (17), 11 states have return successors, (12), 8 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-07 18:49:25,301 INFO L74 IsIncluded]: Start isIncluded. First operand 115 states. Second operand has 114 states, 85 states have (on average 1.2705882352941176) internal successors, (108), 93 states have internal predecessors, (108), 17 states have call successors, (17), 12 states have call predecessors, (17), 11 states have return successors, (12), 8 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-07 18:49:25,301 INFO L87 Difference]: Start difference. First operand 115 states. Second operand has 114 states, 85 states have (on average 1.2705882352941176) internal successors, (108), 93 states have internal predecessors, (108), 17 states have call successors, (17), 12 states have call predecessors, (17), 11 states have return successors, (12), 8 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-07 18:49:25,304 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:25,304 INFO L93 Difference]: Finished difference Result 115 states and 138 transitions. [2022-04-07 18:49:25,304 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 138 transitions. [2022-04-07 18:49:25,305 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:25,305 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:25,305 INFO L74 IsIncluded]: Start isIncluded. First operand has 114 states, 85 states have (on average 1.2705882352941176) internal successors, (108), 93 states have internal predecessors, (108), 17 states have call successors, (17), 12 states have call predecessors, (17), 11 states have return successors, (12), 8 states have call predecessors, (12), 12 states have call successors, (12) Second operand 115 states. [2022-04-07 18:49:25,305 INFO L87 Difference]: Start difference. First operand has 114 states, 85 states have (on average 1.2705882352941176) internal successors, (108), 93 states have internal predecessors, (108), 17 states have call successors, (17), 12 states have call predecessors, (17), 11 states have return successors, (12), 8 states have call predecessors, (12), 12 states have call successors, (12) Second operand 115 states. [2022-04-07 18:49:25,308 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:25,308 INFO L93 Difference]: Finished difference Result 115 states and 138 transitions. [2022-04-07 18:49:25,309 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 138 transitions. [2022-04-07 18:49:25,309 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:25,309 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:25,309 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:49:25,309 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:49:25,309 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 114 states, 85 states have (on average 1.2705882352941176) internal successors, (108), 93 states have internal predecessors, (108), 17 states have call successors, (17), 12 states have call predecessors, (17), 11 states have return successors, (12), 8 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-07 18:49:25,334 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 114 states to 114 states and 137 transitions. [2022-04-07 18:49:25,335 INFO L78 Accepts]: Start accepts. Automaton has 114 states and 137 transitions. Word has length 29 [2022-04-07 18:49:25,335 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:49:25,335 INFO L478 AbstractCegarLoop]: Abstraction has 114 states and 137 transitions. [2022-04-07 18:49:25,335 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-07 18:49:25,335 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 137 transitions. [2022-04-07 18:49:25,336 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-07 18:49:25,336 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:49:25,336 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-07 18:49:25,370 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-07 18:49:25,552 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-07 18:49:25,553 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:49:25,554 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:49:25,554 INFO L85 PathProgramCache]: Analyzing trace with hash -665062919, now seen corresponding path program 1 times [2022-04-07 18:49:25,555 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:49:25,555 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1309712905] [2022-04-07 18:49:25,555 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:25,555 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:49:25,568 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:49:25,569 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1022944985] [2022-04-07 18:49:25,569 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:25,569 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:49:25,569 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:49:25,570 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-07 18:49:25,571 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-07 18:49:25,611 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:25,611 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 3 conjunts are in the unsatisfiable core [2022-04-07 18:49:25,617 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:25,618 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:49:25,701 INFO L272 TraceCheckUtils]: 0: Hoare triple {2516#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2516#true} is VALID [2022-04-07 18:49:25,702 INFO L290 TraceCheckUtils]: 1: Hoare triple {2516#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] {2516#true} is VALID [2022-04-07 18:49:25,702 INFO L290 TraceCheckUtils]: 2: Hoare triple {2516#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2516#true} is VALID [2022-04-07 18:49:25,702 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2516#true} {2516#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2516#true} is VALID [2022-04-07 18:49:25,702 INFO L272 TraceCheckUtils]: 4: Hoare triple {2516#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2516#true} is VALID [2022-04-07 18:49:25,702 INFO L290 TraceCheckUtils]: 5: Hoare triple {2516#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] {2516#true} is VALID [2022-04-07 18:49:25,702 INFO L272 TraceCheckUtils]: 6: Hoare triple {2516#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] {2516#true} is VALID [2022-04-07 18:49:25,702 INFO L290 TraceCheckUtils]: 7: Hoare triple {2516#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] {2516#true} is VALID [2022-04-07 18:49:25,702 INFO L290 TraceCheckUtils]: 8: Hoare triple {2516#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[] {2516#true} is VALID [2022-04-07 18:49:25,703 INFO L290 TraceCheckUtils]: 9: Hoare triple {2516#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2516#true} is VALID [2022-04-07 18:49:25,703 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2516#true} {2516#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] {2516#true} is VALID [2022-04-07 18:49:25,703 INFO L272 TraceCheckUtils]: 11: Hoare triple {2516#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] {2516#true} is VALID [2022-04-07 18:49:25,703 INFO L290 TraceCheckUtils]: 12: Hoare triple {2516#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] {2516#true} is VALID [2022-04-07 18:49:25,703 INFO L290 TraceCheckUtils]: 13: Hoare triple {2516#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[] {2516#true} is VALID [2022-04-07 18:49:25,703 INFO L290 TraceCheckUtils]: 14: Hoare triple {2516#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2516#true} is VALID [2022-04-07 18:49:25,703 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2516#true} {2516#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] {2516#true} is VALID [2022-04-07 18:49:25,704 INFO L290 TraceCheckUtils]: 16: Hoare triple {2516#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] {2569#(= main_~B~0 main_~b~0)} is VALID [2022-04-07 18:49:25,704 INFO L290 TraceCheckUtils]: 17: Hoare triple {2569#(= 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] {2569#(= main_~B~0 main_~b~0)} is VALID [2022-04-07 18:49:25,704 INFO L290 TraceCheckUtils]: 18: Hoare triple {2569#(= main_~B~0 main_~b~0)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {2569#(= main_~B~0 main_~b~0)} is VALID [2022-04-07 18:49:25,705 INFO L290 TraceCheckUtils]: 19: Hoare triple {2569#(= 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[] {2569#(= main_~B~0 main_~b~0)} is VALID [2022-04-07 18:49:25,705 INFO L290 TraceCheckUtils]: 20: Hoare triple {2569#(= 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] {2569#(= main_~B~0 main_~b~0)} is VALID [2022-04-07 18:49:25,706 INFO L290 TraceCheckUtils]: 21: Hoare triple {2569#(= main_~B~0 main_~b~0)} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 20) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {2569#(= main_~B~0 main_~b~0)} is VALID [2022-04-07 18:49:25,706 INFO L272 TraceCheckUtils]: 22: Hoare triple {2569#(= 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] {2516#true} is VALID [2022-04-07 18:49:25,706 INFO L290 TraceCheckUtils]: 23: Hoare triple {2516#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] {2516#true} is VALID [2022-04-07 18:49:25,706 INFO L290 TraceCheckUtils]: 24: Hoare triple {2516#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[] {2516#true} is VALID [2022-04-07 18:49:25,706 INFO L290 TraceCheckUtils]: 25: Hoare triple {2516#true} [126] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2516#true} is VALID [2022-04-07 18:49:25,707 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2516#true} {2569#(= 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] {2569#(= main_~B~0 main_~b~0)} is VALID [2022-04-07 18:49:25,707 INFO L290 TraceCheckUtils]: 27: Hoare triple {2569#(= 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] {2517#false} is VALID [2022-04-07 18:49:25,707 INFO L290 TraceCheckUtils]: 28: Hoare triple {2517#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[] {2517#false} is VALID [2022-04-07 18:49:25,707 INFO L290 TraceCheckUtils]: 29: Hoare triple {2517#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] {2517#false} is VALID [2022-04-07 18:49:25,707 INFO L290 TraceCheckUtils]: 30: Hoare triple {2517#false} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 20) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {2517#false} is VALID [2022-04-07 18:49:25,707 INFO L272 TraceCheckUtils]: 31: Hoare triple {2517#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] {2517#false} is VALID [2022-04-07 18:49:25,708 INFO L290 TraceCheckUtils]: 32: Hoare triple {2517#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] {2517#false} is VALID [2022-04-07 18:49:25,708 INFO L290 TraceCheckUtils]: 33: Hoare triple {2517#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[] {2517#false} is VALID [2022-04-07 18:49:25,708 INFO L290 TraceCheckUtils]: 34: Hoare triple {2517#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2517#false} is VALID [2022-04-07 18:49:25,708 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-07 18:49:25,708 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 18:49:25,708 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:49:25,708 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1309712905] [2022-04-07 18:49:25,708 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:49:25,708 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1022944985] [2022-04-07 18:49:25,709 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1022944985] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 18:49:25,709 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 18:49:25,709 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 18:49:25,709 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [513713074] [2022-04-07 18:49:25,709 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 18:49:25,709 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-07 18:49:25,709 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:49:25,710 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-07 18:49:25,729 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-07 18:49:25,730 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 18:49:25,730 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:49:25,730 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 18:49:25,730 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 18:49:25,730 INFO L87 Difference]: Start difference. First operand 114 states and 137 transitions. Second operand has 3 states, 3 states have (on average 7.333333333333333) internal successors, (22), 3 states have internal predecessors, (22), 3 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 18:49:25,788 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:25,788 INFO L93 Difference]: Finished difference Result 110 states and 130 transitions. [2022-04-07 18:49:25,788 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 18:49:25,788 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-07 18:49:25,788 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:49:25,789 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-07 18:49:25,789 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 43 transitions. [2022-04-07 18:49:25,790 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-07 18:49:25,790 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 43 transitions. [2022-04-07 18:49:25,790 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 43 transitions. [2022-04-07 18:49:25,824 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-07 18:49:25,825 INFO L225 Difference]: With dead ends: 110 [2022-04-07 18:49:25,825 INFO L226 Difference]: Without dead ends: 100 [2022-04-07 18:49:25,826 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-07 18:49:25,826 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-07 18:49:25,826 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-07 18:49:25,827 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2022-04-07 18:49:25,830 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 100. [2022-04-07 18:49:25,831 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:49:25,831 INFO L82 GeneralOperation]: Start isEquivalent. First operand 100 states. Second operand has 100 states, 75 states have (on average 1.2666666666666666) internal successors, (95), 81 states have internal predecessors, (95), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 18:49:25,831 INFO L74 IsIncluded]: Start isIncluded. First operand 100 states. Second operand has 100 states, 75 states have (on average 1.2666666666666666) internal successors, (95), 81 states have internal predecessors, (95), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 18:49:25,832 INFO L87 Difference]: Start difference. First operand 100 states. Second operand has 100 states, 75 states have (on average 1.2666666666666666) internal successors, (95), 81 states have internal predecessors, (95), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 18:49:25,834 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:25,834 INFO L93 Difference]: Finished difference Result 100 states and 120 transitions. [2022-04-07 18:49:25,834 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 120 transitions. [2022-04-07 18:49:25,834 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:25,834 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:25,835 INFO L74 IsIncluded]: Start isIncluded. First operand has 100 states, 75 states have (on average 1.2666666666666666) internal successors, (95), 81 states have internal predecessors, (95), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) Second operand 100 states. [2022-04-07 18:49:25,835 INFO L87 Difference]: Start difference. First operand has 100 states, 75 states have (on average 1.2666666666666666) internal successors, (95), 81 states have internal predecessors, (95), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) Second operand 100 states. [2022-04-07 18:49:25,837 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:25,837 INFO L93 Difference]: Finished difference Result 100 states and 120 transitions. [2022-04-07 18:49:25,837 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 120 transitions. [2022-04-07 18:49:25,838 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:25,838 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:25,838 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:49:25,838 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:49:25,838 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 100 states, 75 states have (on average 1.2666666666666666) internal successors, (95), 81 states have internal predecessors, (95), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 18:49:25,840 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 100 states to 100 states and 120 transitions. [2022-04-07 18:49:25,840 INFO L78 Accepts]: Start accepts. Automaton has 100 states and 120 transitions. Word has length 35 [2022-04-07 18:49:25,840 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:49:25,841 INFO L478 AbstractCegarLoop]: Abstraction has 100 states and 120 transitions. [2022-04-07 18:49:25,841 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-07 18:49:25,841 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 120 transitions. [2022-04-07 18:49:25,841 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-07 18:49:25,841 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:49:25,842 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-07 18:49:25,873 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-07 18:49:26,058 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-07 18:49:26,061 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:49:26,061 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:49:26,061 INFO L85 PathProgramCache]: Analyzing trace with hash 1800746756, now seen corresponding path program 1 times [2022-04-07 18:49:26,061 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:49:26,061 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [810388517] [2022-04-07 18:49:26,061 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:26,061 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:49:26,076 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:49:26,077 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1038878241] [2022-04-07 18:49:26,077 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:26,077 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:49:26,077 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:49:26,079 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-07 18:49:26,081 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-07 18:49:26,114 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:26,115 INFO L263 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-07 18:49:26,121 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:49:26,122 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:49:26,340 INFO L272 TraceCheckUtils]: 0: Hoare triple {3033#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3033#true} is VALID [2022-04-07 18:49:26,340 INFO L290 TraceCheckUtils]: 1: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:26,340 INFO L290 TraceCheckUtils]: 2: Hoare triple {3033#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3033#true} is VALID [2022-04-07 18:49:26,341 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3033#true} {3033#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3033#true} is VALID [2022-04-07 18:49:26,341 INFO L272 TraceCheckUtils]: 4: Hoare triple {3033#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3033#true} is VALID [2022-04-07 18:49:26,341 INFO L290 TraceCheckUtils]: 5: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:26,341 INFO L272 TraceCheckUtils]: 6: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:26,341 INFO L290 TraceCheckUtils]: 7: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:26,341 INFO L290 TraceCheckUtils]: 8: Hoare triple {3033#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[] {3033#true} is VALID [2022-04-07 18:49:26,341 INFO L290 TraceCheckUtils]: 9: Hoare triple {3033#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3033#true} is VALID [2022-04-07 18:49:26,341 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3033#true} {3033#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] {3033#true} is VALID [2022-04-07 18:49:26,341 INFO L272 TraceCheckUtils]: 11: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:26,341 INFO L290 TraceCheckUtils]: 12: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:26,341 INFO L290 TraceCheckUtils]: 13: Hoare triple {3033#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[] {3033#true} is VALID [2022-04-07 18:49:26,342 INFO L290 TraceCheckUtils]: 14: Hoare triple {3033#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3033#true} is VALID [2022-04-07 18:49:26,342 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3033#true} {3033#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] {3033#true} is VALID [2022-04-07 18:49:26,342 INFO L290 TraceCheckUtils]: 16: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:26,342 INFO L290 TraceCheckUtils]: 17: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:26,342 INFO L290 TraceCheckUtils]: 18: Hoare triple {3033#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3033#true} is VALID [2022-04-07 18:49:26,342 INFO L290 TraceCheckUtils]: 19: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:26,342 INFO L290 TraceCheckUtils]: 20: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:26,342 INFO L290 TraceCheckUtils]: 21: Hoare triple {3033#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3033#true} is VALID [2022-04-07 18:49:26,342 INFO L290 TraceCheckUtils]: 22: Hoare triple {3033#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[] {3033#true} is VALID [2022-04-07 18:49:26,342 INFO L290 TraceCheckUtils]: 23: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:26,342 INFO L290 TraceCheckUtils]: 24: Hoare triple {3033#true} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 20) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {3033#true} is VALID [2022-04-07 18:49:26,343 INFO L272 TraceCheckUtils]: 25: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:26,343 INFO L290 TraceCheckUtils]: 26: Hoare triple {3033#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] {3116#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:49:26,343 INFO L290 TraceCheckUtils]: 27: Hoare triple {3116#(= |__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[] {3120#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:49:26,344 INFO L290 TraceCheckUtils]: 28: Hoare triple {3120#(not (= |__VERIFIER_assert_#in~cond| 0))} [126] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3120#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:49:26,344 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3120#(not (= |__VERIFIER_assert_#in~cond| 0))} {3033#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] {3127#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-07 18:49:26,345 INFO L290 TraceCheckUtils]: 30: Hoare triple {3127#(= (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[] {3127#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-07 18:49:26,345 INFO L272 TraceCheckUtils]: 31: Hoare triple {3127#(= (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] {3134#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2022-04-07 18:49:26,346 INFO L290 TraceCheckUtils]: 32: Hoare triple {3134#(= |__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] {3138#(= __VERIFIER_assert_~cond 1)} is VALID [2022-04-07 18:49:26,348 INFO L290 TraceCheckUtils]: 33: Hoare triple {3138#(= __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[] {3034#false} is VALID [2022-04-07 18:49:26,348 INFO L290 TraceCheckUtils]: 34: Hoare triple {3034#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3034#false} is VALID [2022-04-07 18:49:26,348 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-07 18:49:26,348 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:49:27,255 INFO L290 TraceCheckUtils]: 34: Hoare triple {3034#false} [124] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3034#false} is VALID [2022-04-07 18:49:27,256 INFO L290 TraceCheckUtils]: 33: Hoare triple {3148#(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[] {3034#false} is VALID [2022-04-07 18:49:27,257 INFO L290 TraceCheckUtils]: 32: Hoare triple {3120#(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] {3148#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 18:49:27,258 INFO L272 TraceCheckUtils]: 31: Hoare triple {3127#(= (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] {3120#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:49:27,260 INFO L290 TraceCheckUtils]: 30: Hoare triple {3127#(= (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[] {3127#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-07 18:49:27,269 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3120#(not (= |__VERIFIER_assert_#in~cond| 0))} {3033#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] {3127#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-07 18:49:27,269 INFO L290 TraceCheckUtils]: 28: Hoare triple {3120#(not (= |__VERIFIER_assert_#in~cond| 0))} [126] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3120#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:49:27,269 INFO L290 TraceCheckUtils]: 27: Hoare triple {3170#(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[] {3120#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:49:27,270 INFO L290 TraceCheckUtils]: 26: Hoare triple {3033#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] {3170#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 18:49:27,270 INFO L272 TraceCheckUtils]: 25: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:27,270 INFO L290 TraceCheckUtils]: 24: Hoare triple {3033#true} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 20) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {3033#true} is VALID [2022-04-07 18:49:27,270 INFO L290 TraceCheckUtils]: 23: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:27,270 INFO L290 TraceCheckUtils]: 22: Hoare triple {3033#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[] {3033#true} is VALID [2022-04-07 18:49:27,270 INFO L290 TraceCheckUtils]: 21: Hoare triple {3033#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3033#true} is VALID [2022-04-07 18:49:27,270 INFO L290 TraceCheckUtils]: 20: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:27,270 INFO L290 TraceCheckUtils]: 19: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:27,271 INFO L290 TraceCheckUtils]: 18: Hoare triple {3033#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 20) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3033#true} is VALID [2022-04-07 18:49:27,271 INFO L290 TraceCheckUtils]: 17: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:27,271 INFO L290 TraceCheckUtils]: 16: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:27,271 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3033#true} {3033#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] {3033#true} is VALID [2022-04-07 18:49:27,271 INFO L290 TraceCheckUtils]: 14: Hoare triple {3033#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3033#true} is VALID [2022-04-07 18:49:27,271 INFO L290 TraceCheckUtils]: 13: Hoare triple {3033#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[] {3033#true} is VALID [2022-04-07 18:49:27,271 INFO L290 TraceCheckUtils]: 12: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:27,271 INFO L272 TraceCheckUtils]: 11: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:27,271 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3033#true} {3033#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] {3033#true} is VALID [2022-04-07 18:49:27,271 INFO L290 TraceCheckUtils]: 9: Hoare triple {3033#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3033#true} is VALID [2022-04-07 18:49:27,271 INFO L290 TraceCheckUtils]: 8: Hoare triple {3033#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[] {3033#true} is VALID [2022-04-07 18:49:27,271 INFO L290 TraceCheckUtils]: 7: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:27,272 INFO L272 TraceCheckUtils]: 6: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:27,272 INFO L290 TraceCheckUtils]: 5: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:27,272 INFO L272 TraceCheckUtils]: 4: Hoare triple {3033#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3033#true} is VALID [2022-04-07 18:49:27,272 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3033#true} {3033#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3033#true} is VALID [2022-04-07 18:49:27,272 INFO L290 TraceCheckUtils]: 2: Hoare triple {3033#true} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3033#true} is VALID [2022-04-07 18:49:27,272 INFO L290 TraceCheckUtils]: 1: Hoare triple {3033#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] {3033#true} is VALID [2022-04-07 18:49:27,272 INFO L272 TraceCheckUtils]: 0: Hoare triple {3033#true} [92] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3033#true} is VALID [2022-04-07 18:49:27,272 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-07 18:49:27,272 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:49:27,272 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [810388517] [2022-04-07 18:49:27,272 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:49:27,273 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1038878241] [2022-04-07 18:49:27,273 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1038878241] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 18:49:27,273 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 18:49:27,273 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6] total 9 [2022-04-07 18:49:27,273 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1403820590] [2022-04-07 18:49:27,273 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 18:49:27,274 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-07 18:49:27,274 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:49:27,274 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-07 18:49:27,297 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-07 18:49:27,297 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-07 18:49:27,297 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:49:27,297 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-07 18:49:27,298 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-04-07 18:49:27,298 INFO L87 Difference]: Start difference. First operand 100 states and 120 transitions. Second operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 8 states have internal predecessors, (24), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-07 18:49:29,624 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-07 18:49:29,828 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:29,828 INFO L93 Difference]: Finished difference Result 113 states and 129 transitions. [2022-04-07 18:49:29,828 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-07 18:49:29,828 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-07 18:49:29,828 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:49:29,829 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-07 18:49:29,830 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 42 transitions. [2022-04-07 18:49:29,830 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-07 18:49:29,831 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 42 transitions. [2022-04-07 18:49:29,831 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 42 transitions. [2022-04-07 18:49:29,862 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:49:29,864 INFO L225 Difference]: With dead ends: 113 [2022-04-07 18:49:29,864 INFO L226 Difference]: Without dead ends: 95 [2022-04-07 18:49:29,864 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-07 18:49:29,865 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 12 mSDsluCounter, 145 mSDsCounter, 0 mSdLazyCounter, 57 mSolverCounterSat, 3 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 174 SdHoareTripleChecker+Invalid, 61 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 57 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.2s IncrementalHoareTripleChecker+Time [2022-04-07 18:49:29,865 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 174 Invalid, 61 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 57 Invalid, 1 Unknown, 0 Unchecked, 2.2s Time] [2022-04-07 18:49:29,865 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states. [2022-04-07 18:49:29,871 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 95. [2022-04-07 18:49:29,871 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:49:29,871 INFO L82 GeneralOperation]: Start isEquivalent. First operand 95 states. Second operand has 95 states, 73 states have (on average 1.2191780821917808) internal successors, (89), 77 states have internal predecessors, (89), 12 states have call successors, (12), 10 states have call predecessors, (12), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 18:49:29,871 INFO L74 IsIncluded]: Start isIncluded. First operand 95 states. Second operand has 95 states, 73 states have (on average 1.2191780821917808) internal successors, (89), 77 states have internal predecessors, (89), 12 states have call successors, (12), 10 states have call predecessors, (12), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 18:49:29,871 INFO L87 Difference]: Start difference. First operand 95 states. Second operand has 95 states, 73 states have (on average 1.2191780821917808) internal successors, (89), 77 states have internal predecessors, (89), 12 states have call successors, (12), 10 states have call predecessors, (12), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 18:49:29,874 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:29,874 INFO L93 Difference]: Finished difference Result 95 states and 111 transitions. [2022-04-07 18:49:29,874 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 111 transitions. [2022-04-07 18:49:29,875 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:29,875 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:29,875 INFO L74 IsIncluded]: Start isIncluded. First operand has 95 states, 73 states have (on average 1.2191780821917808) internal successors, (89), 77 states have internal predecessors, (89), 12 states have call successors, (12), 10 states have call predecessors, (12), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) Second operand 95 states. [2022-04-07 18:49:29,875 INFO L87 Difference]: Start difference. First operand has 95 states, 73 states have (on average 1.2191780821917808) internal successors, (89), 77 states have internal predecessors, (89), 12 states have call successors, (12), 10 states have call predecessors, (12), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) Second operand 95 states. [2022-04-07 18:49:29,878 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:49:29,878 INFO L93 Difference]: Finished difference Result 95 states and 111 transitions. [2022-04-07 18:49:29,878 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 111 transitions. [2022-04-07 18:49:29,878 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:49:29,878 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:49:29,878 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:49:29,878 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:49:29,879 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 95 states, 73 states have (on average 1.2191780821917808) internal successors, (89), 77 states have internal predecessors, (89), 12 states have call successors, (12), 10 states have call predecessors, (12), 9 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 18:49:29,893 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 95 states to 95 states and 111 transitions. [2022-04-07 18:49:29,893 INFO L78 Accepts]: Start accepts. Automaton has 95 states and 111 transitions. Word has length 35 [2022-04-07 18:49:29,893 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:49:29,893 INFO L478 AbstractCegarLoop]: Abstraction has 95 states and 111 transitions. [2022-04-07 18:49:29,893 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-07 18:49:29,894 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 111 transitions. [2022-04-07 18:49:29,907 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-07 18:49:29,908 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:49:29,908 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-07 18:49:29,926 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-07 18:49:30,108 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-07 18:49:30,108 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:49:30,109 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:49:30,109 INFO L85 PathProgramCache]: Analyzing trace with hash 1291395213, now seen corresponding path program 1 times [2022-04-07 18:49:30,109 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:49:30,109 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1616237480] [2022-04-07 18:49:30,109 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:30,109 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:49:30,121 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:49:30,121 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [341189802] [2022-04-07 18:49:30,121 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:49:30,121 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:49:30,122 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:49:30,122 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-07 18:49:30,123 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process