/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_unwindbound100.i -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-14 20:56:55,209 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-14 20:56:55,210 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-14 20:56:55,233 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-14 20:56:55,234 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-14 20:56:55,234 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-14 20:56:55,238 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-14 20:56:55,242 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-14 20:56:55,243 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-14 20:56:55,247 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-14 20:56:55,247 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-14 20:56:55,249 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-14 20:56:55,249 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-14 20:56:55,253 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-14 20:56:55,254 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-14 20:56:55,254 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-14 20:56:55,255 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-14 20:56:55,255 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-14 20:56:55,259 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-14 20:56:55,263 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-14 20:56:55,264 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-14 20:56:55,265 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-14 20:56:55,265 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-14 20:56:55,266 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-14 20:56:55,267 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-14 20:56:55,271 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-14 20:56:55,271 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-14 20:56:55,272 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-14 20:56:55,273 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-14 20:56:55,273 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-14 20:56:55,274 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-14 20:56:55,274 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-14 20:56:55,275 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-14 20:56:55,276 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-14 20:56:55,276 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-14 20:56:55,276 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-14 20:56:55,277 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-14 20:56:55,277 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-14 20:56:55,277 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-14 20:56:55,277 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-14 20:56:55,278 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-14 20:56:55,279 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-14 20:56:55,280 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-14 20:56:55,286 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-14 20:56:55,287 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-14 20:56:55,288 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-14 20:56:55,288 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-14 20:56:55,288 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-14 20:56:55,288 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-14 20:56:55,288 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-14 20:56:55,288 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-14 20:56:55,288 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-14 20:56:55,289 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-14 20:56:55,289 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-14 20:56:55,289 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-14 20:56:55,289 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-14 20:56:55,289 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-14 20:56:55,289 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-14 20:56:55,290 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-14 20:56:55,290 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-14 20:56:55,290 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-14 20:56:55,290 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 20:56:55,290 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-14 20:56:55,290 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-14 20:56:55,291 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-14 20:56:55,291 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-14 20:56:55,461 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-14 20:56:55,473 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-14 20:56:55,475 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-14 20:56:55,476 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-14 20:56:55,479 INFO L275 PluginConnector]: CDTParser initialized [2022-04-14 20:56:55,480 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/divbin_unwindbound100.i [2022-04-14 20:56:55,548 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a72e47c27/697d86360cad4a859f1e9ae69bc527e6/FLAG4e51ad670 [2022-04-14 20:56:55,883 INFO L306 CDTParser]: Found 1 translation units. [2022-04-14 20:56:55,883 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/divbin_unwindbound100.i [2022-04-14 20:56:55,887 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a72e47c27/697d86360cad4a859f1e9ae69bc527e6/FLAG4e51ad670 [2022-04-14 20:56:55,897 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a72e47c27/697d86360cad4a859f1e9ae69bc527e6 [2022-04-14 20:56:55,899 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-14 20:56:55,900 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-14 20:56:55,903 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-14 20:56:55,903 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-14 20:56:55,905 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-14 20:56:55,906 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 08:56:55" (1/1) ... [2022-04-14 20:56:55,907 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7153f38a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:56:55, skipping insertion in model container [2022-04-14 20:56:55,907 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 08:56:55" (1/1) ... [2022-04-14 20:56:55,915 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-14 20:56:55,924 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-14 20:56:56,047 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_unwindbound100.i[950,963] [2022-04-14 20:56:56,063 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 20:56:56,080 INFO L203 MainTranslator]: Completed pre-run [2022-04-14 20:56:56,088 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_unwindbound100.i[950,963] [2022-04-14 20:56:56,092 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 20:56:56,100 INFO L208 MainTranslator]: Completed translation [2022-04-14 20:56:56,101 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:56:56 WrapperNode [2022-04-14 20:56:56,101 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-14 20:56:56,101 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-14 20:56:56,101 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-14 20:56:56,102 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-14 20:56:56,109 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:56:56" (1/1) ... [2022-04-14 20:56:56,109 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:56:56" (1/1) ... [2022-04-14 20:56:56,115 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:56:56" (1/1) ... [2022-04-14 20:56:56,115 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:56:56" (1/1) ... [2022-04-14 20:56:56,119 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:56:56" (1/1) ... [2022-04-14 20:56:56,123 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:56:56" (1/1) ... [2022-04-14 20:56:56,123 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:56:56" (1/1) ... [2022-04-14 20:56:56,124 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-14 20:56:56,125 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-14 20:56:56,125 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-14 20:56:56,125 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-14 20:56:56,127 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:56:56" (1/1) ... [2022-04-14 20:56:56,137 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 20:56:56,143 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:56:56,153 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-14 20:56:56,155 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-14 20:56:56,179 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-14 20:56:56,180 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-14 20:56:56,180 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-14 20:56:56,180 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-14 20:56:56,180 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-14 20:56:56,180 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-14 20:56:56,180 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-14 20:56:56,180 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-14 20:56:56,180 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_perror_fail [2022-04-14 20:56:56,180 INFO L130 BoogieDeclarations]: Found specification of procedure __assert [2022-04-14 20:56:56,180 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-14 20:56:56,181 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-14 20:56:56,181 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-14 20:56:56,181 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-14 20:56:56,181 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-14 20:56:56,181 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-14 20:56:56,181 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-14 20:56:56,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-14 20:56:56,181 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-14 20:56:56,181 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-14 20:56:56,181 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-14 20:56:56,181 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-14 20:56:56,232 INFO L234 CfgBuilder]: Building ICFG [2022-04-14 20:56:56,235 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-14 20:56:56,340 INFO L275 CfgBuilder]: Performing block encoding [2022-04-14 20:56:56,345 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-14 20:56:56,346 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-14 20:56:56,347 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 08:56:56 BoogieIcfgContainer [2022-04-14 20:56:56,347 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-14 20:56:56,347 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-14 20:56:56,348 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-14 20:56:56,348 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-14 20:56:56,350 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 08:56:56" (1/1) ... [2022-04-14 20:56:56,352 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-14 20:56:56,371 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 08:56:56 BasicIcfg [2022-04-14 20:56:56,372 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-14 20:56:56,373 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-14 20:56:56,373 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-14 20:56:56,375 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-14 20:56:56,375 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.04 08:56:55" (1/4) ... [2022-04-14 20:56:56,375 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6113310 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 08:56:56, skipping insertion in model container [2022-04-14 20:56:56,375 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:56:56" (2/4) ... [2022-04-14 20:56:56,376 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6113310 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 08:56:56, skipping insertion in model container [2022-04-14 20:56:56,376 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 08:56:56" (3/4) ... [2022-04-14 20:56:56,376 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6113310 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 08:56:56, skipping insertion in model container [2022-04-14 20:56:56,376 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 08:56:56" (4/4) ... [2022-04-14 20:56:56,377 INFO L111 eAbstractionObserver]: Analyzing ICFG divbin_unwindbound100.iJordan [2022-04-14 20:56:56,381 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-14 20:56:56,381 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-14 20:56:56,414 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-14 20:56:56,419 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-14 20:56:56,420 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-14 20:56:56,433 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-14 20:56:56,439 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-14 20:56:56,439 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:56:56,439 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-14 20:56:56,440 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:56:56,444 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:56:56,444 INFO L85 PathProgramCache]: Analyzing trace with hash 35225450, now seen corresponding path program 1 times [2022-04-14 20:56:56,450 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:56:56,451 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1352598388] [2022-04-14 20:56:56,451 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:56:56,451 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:56:56,516 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:56:56,559 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 20:56:56,569 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:56:56,585 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-14 20:56:56,585 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-14 20:56:56,586 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-14 20:56:56,586 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 20:56:56,588 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:56:56,599 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-14 20:56:56,600 INFO L290 TraceCheckUtils]: 1: Hoare triple {36#true} [102] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-14 20:56:56,600 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-14 20:56:56,601 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-14 20:56:56,601 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-14 20:56:56,603 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:56:56,609 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-14 20:56:56,610 INFO L290 TraceCheckUtils]: 1: Hoare triple {36#true} [102] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-14 20:56:56,610 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-14 20:56:56,612 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-14 20:56:56,614 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-14 20:56:56,614 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-14 20:56:56,614 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-14 20:56:56,615 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-14 20:56:56,615 INFO L272 TraceCheckUtils]: 4: Hoare triple {36#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#true} is VALID [2022-04-14 20:56:56,615 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-14 20:56:56,615 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-14 20:56:56,615 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-14 20:56:56,617 INFO L290 TraceCheckUtils]: 8: Hoare triple {36#true} [102] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-14 20:56:56,617 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-14 20:56:56,617 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-14 20:56:56,617 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-14 20:56:56,618 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-14 20:56:56,623 INFO L290 TraceCheckUtils]: 13: Hoare triple {36#true} [102] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {37#false} is VALID [2022-04-14 20:56:56,624 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-14 20:56:56,624 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-14 20:56:56,624 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-14 20:56:56,624 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-14 20:56:56,625 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-14 20:56:56,625 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-14 20:56:56,625 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-14 20:56:56,625 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-14 20:56:56,625 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-14 20:56:56,626 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-14 20:56:56,626 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:56:56,626 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1352598388] [2022-04-14 20:56:56,627 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1352598388] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:56:56,627 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:56:56,627 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-14 20:56:56,628 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1102130078] [2022-04-14 20:56:56,629 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:56:56,632 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-14 20:56:56,636 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:56:56,638 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-14 20:56:56,671 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-14 20:56:56,671 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-14 20:56:56,671 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:56:56,684 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-14 20:56:56,685 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 20:56:56,686 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-14 20:56:56,795 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:56:56,795 INFO L93 Difference]: Finished difference Result 34 states and 40 transitions. [2022-04-14 20:56:56,795 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-14 20:56:56,795 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-14 20:56:56,795 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:56:56,796 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-14 20:56:56,801 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 45 transitions. [2022-04-14 20:56:56,801 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-14 20:56:56,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 45 transitions. [2022-04-14 20:56:56,804 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 45 transitions. [2022-04-14 20:56:56,847 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-14 20:56:56,853 INFO L225 Difference]: With dead ends: 34 [2022-04-14 20:56:56,853 INFO L226 Difference]: Without dead ends: 29 [2022-04-14 20:56:56,854 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-14 20:56:56,857 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-14 20:56:56,857 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-14 20:56:56,868 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-14 20:56:56,875 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 28. [2022-04-14 20:56:56,875 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:56:56,876 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-14 20:56:56,876 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-14 20:56:56,877 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-14 20:56:56,880 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:56:56,880 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-14 20:56:56,880 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-14 20:56:56,881 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:56:56,881 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:56:56,881 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-14 20:56:56,881 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-14 20:56:56,884 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:56:56,884 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-14 20:56:56,884 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-14 20:56:56,885 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:56:56,885 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:56:56,885 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:56:56,885 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:56:56,885 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-14 20:56:56,887 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 34 transitions. [2022-04-14 20:56:56,888 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 34 transitions. Word has length 23 [2022-04-14 20:56:56,888 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:56:56,888 INFO L478 AbstractCegarLoop]: Abstraction has 28 states and 34 transitions. [2022-04-14 20:56:56,888 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-14 20:56:56,889 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-14 20:56:56,889 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-14 20:56:56,889 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:56:56,889 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-14 20:56:56,889 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-14 20:56:56,890 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:56:56,890 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:56:56,890 INFO L85 PathProgramCache]: Analyzing trace with hash 106385839, now seen corresponding path program 1 times [2022-04-14 20:56:56,890 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:56:56,890 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1451060421] [2022-04-14 20:56:56,890 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:56:56,891 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:56:56,917 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:56:56,918 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1703933862] [2022-04-14 20:56:56,918 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:56:56,918 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:56:56,918 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:56:56,925 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-14 20:56:56,947 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-14 20:56:56,984 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:56:56,986 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-14 20:56:56,995 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:56:56,998 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:56:57,176 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-14 20:56:57,177 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-14 20:56:57,178 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-14 20:56:57,178 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-14 20:56:57,179 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-14 20:56:57,179 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-14 20:56:57,180 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-14 20:56:57,181 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-14 20:56:57,182 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-14 20:56:57,182 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-14 20:56:57,183 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-14 20:56:57,184 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-14 20:56:57,184 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-14 20:56:57,184 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-14 20:56:57,188 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-14 20:56:57,190 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-14 20:56:57,191 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-14 20:56:57,191 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-14 20:56:57,192 INFO L290 TraceCheckUtils]: 18: Hoare triple {229#(<= |main_#t~post3| 0)} [109] L36-1-->L45-2: Formula: (not (< |v_main_#t~post3_3| 100)) InVars {main_#t~post3=|v_main_#t~post3_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {173#false} is VALID [2022-04-14 20:56:57,192 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-14 20:56:57,193 INFO L290 TraceCheckUtils]: 20: Hoare triple {173#false} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 100)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {173#false} is VALID [2022-04-14 20:56:57,195 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-14 20:56:57,196 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-14 20:56:57,196 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-14 20:56:57,196 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-14 20:56:57,196 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-14 20:56:57,197 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 20:56:57,197 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:56:57,197 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1451060421] [2022-04-14 20:56:57,197 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:56:57,198 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1703933862] [2022-04-14 20:56:57,201 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1703933862] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:56:57,201 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:56:57,201 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-14 20:56:57,202 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1359802074] [2022-04-14 20:56:57,203 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:56:57,204 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-14 20:56:57,205 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:56:57,206 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-14 20:56:57,225 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-14 20:56:57,225 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-14 20:56:57,226 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:56:57,226 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-14 20:56:57,226 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-14 20:56:57,227 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-14 20:56:57,286 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:56:57,287 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2022-04-14 20:56:57,287 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-14 20:56:57,287 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-14 20:56:57,287 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:56:57,287 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-14 20:56:57,289 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2022-04-14 20:56:57,289 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-14 20:56:57,291 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2022-04-14 20:56:57,291 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 37 transitions. [2022-04-14 20:56:57,316 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-14 20:56:57,317 INFO L225 Difference]: With dead ends: 30 [2022-04-14 20:56:57,317 INFO L226 Difference]: Without dead ends: 30 [2022-04-14 20:56:57,317 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-14 20:56:57,318 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-14 20:56:57,318 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-14 20:56:57,319 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2022-04-14 20:56:57,320 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 30. [2022-04-14 20:56:57,320 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:56:57,321 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-14 20:56:57,321 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-14 20:56:57,321 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-14 20:56:57,331 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:56:57,332 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2022-04-14 20:56:57,332 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2022-04-14 20:56:57,332 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:56:57,332 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:56:57,332 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-14 20:56:57,333 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-14 20:56:57,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:56:57,334 INFO L93 Difference]: Finished difference Result 30 states and 36 transitions. [2022-04-14 20:56:57,334 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2022-04-14 20:56:57,335 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:56:57,335 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:56:57,335 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:56:57,335 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:56:57,335 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-14 20:56:57,336 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 36 transitions. [2022-04-14 20:56:57,337 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 36 transitions. Word has length 25 [2022-04-14 20:56:57,337 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:56:57,337 INFO L478 AbstractCegarLoop]: Abstraction has 30 states and 36 transitions. [2022-04-14 20:56:57,337 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-14 20:56:57,337 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 36 transitions. [2022-04-14 20:56:57,337 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-04-14 20:56:57,338 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:56:57,338 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-14 20:56:57,356 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-14 20:56:57,553 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-14 20:56:57,554 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:56:57,555 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:56:57,555 INFO L85 PathProgramCache]: Analyzing trace with hash 1662084126, now seen corresponding path program 1 times [2022-04-14 20:56:57,555 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:56:57,555 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1215615509] [2022-04-14 20:56:57,555 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:56:57,555 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:56:57,577 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:56:57,577 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [766474154] [2022-04-14 20:56:57,578 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:56:57,578 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:56:57,578 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:56:57,579 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-14 20:56:57,581 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-14 20:56:57,612 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:56:57,613 INFO L263 TraceCheckSpWp]: Trace formula consists of 91 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-14 20:56:57,621 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:56:57,622 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:56:57,780 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-14 20:56:57,781 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-14 20:56:57,782 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-14 20:56:57,782 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-14 20:56:57,782 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-14 20:56:57,783 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-14 20:56:57,783 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-14 20:56:57,784 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-14 20:56:57,784 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-14 20:56:57,784 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-14 20:56:57,785 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-14 20:56:57,785 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-14 20:56:57,786 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-14 20:56:57,786 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-14 20:56:57,786 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-14 20:56:57,787 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-14 20:56:57,787 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-14 20:56:57,788 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-14 20:56:57,788 INFO L290 TraceCheckUtils]: 18: Hoare triple {427#(<= ~counter~0 1)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 100) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {427#(<= ~counter~0 1)} is VALID [2022-04-14 20:56:57,788 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-14 20:56:57,789 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-14 20:56:57,789 INFO L290 TraceCheckUtils]: 21: Hoare triple {437#(<= |main_#t~post4| 1)} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 100)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {371#false} is VALID [2022-04-14 20:56:57,789 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-14 20:56:57,790 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-14 20:56:57,790 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-14 20:56:57,790 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-14 20:56:57,790 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-14 20:56:57,790 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 20:56:57,792 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:56:57,792 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1215615509] [2022-04-14 20:56:57,792 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:56:57,793 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [766474154] [2022-04-14 20:56:57,793 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [766474154] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:56:57,793 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:56:57,793 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 20:56:57,793 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1273244581] [2022-04-14 20:56:57,793 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:56:57,793 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-14 20:56:57,794 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:56:57,794 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-14 20:56:57,808 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-14 20:56:57,808 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 20:56:57,808 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:56:57,809 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 20:56:57,809 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-14 20:56:57,810 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-14 20:56:57,890 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:56:57,891 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-14 20:56:57,891 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 20:56:57,891 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-14 20:56:57,891 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:56:57,891 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-14 20:56:57,895 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2022-04-14 20:56:57,895 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-14 20:56:57,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2022-04-14 20:56:57,902 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 42 transitions. [2022-04-14 20:56:57,928 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-14 20:56:57,931 INFO L225 Difference]: With dead ends: 34 [2022-04-14 20:56:57,932 INFO L226 Difference]: Without dead ends: 34 [2022-04-14 20:56:57,932 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-14 20:56:57,934 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-14 20:56:57,935 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-14 20:56:57,936 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-14 20:56:57,941 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2022-04-14 20:56:57,941 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:56:57,942 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-14 20:56:57,944 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-14 20:56:57,944 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-14 20:56:57,949 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:56:57,949 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-14 20:56:57,949 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2022-04-14 20:56:57,951 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:56:57,951 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:56:57,952 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-14 20:56:57,952 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-14 20:56:57,956 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:56:57,956 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-14 20:56:57,956 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2022-04-14 20:56:57,957 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:56:57,957 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:56:57,957 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:56:57,957 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:56:57,958 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-14 20:56:57,960 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 40 transitions. [2022-04-14 20:56:57,960 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 40 transitions. Word has length 26 [2022-04-14 20:56:57,961 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:56:57,961 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 40 transitions. [2022-04-14 20:56:57,961 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-14 20:56:57,961 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 40 transitions. [2022-04-14 20:56:57,962 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-04-14 20:56:57,962 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:56:57,962 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-14 20:56:57,979 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-14 20:56:58,171 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-14 20:56:58,171 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:56:58,172 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:56:58,172 INFO L85 PathProgramCache]: Analyzing trace with hash 1663216184, now seen corresponding path program 1 times [2022-04-14 20:56:58,172 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:56:58,172 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1498541801] [2022-04-14 20:56:58,172 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:56:58,172 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:56:58,188 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:56:58,188 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [218783649] [2022-04-14 20:56:58,188 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:56:58,188 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:56:58,188 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:56:58,189 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-14 20:56:58,190 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-14 20:56:58,227 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:56:58,228 INFO L263 TraceCheckSpWp]: Trace formula consists of 91 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-14 20:56:58,235 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:56:58,236 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:56:58,995 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-14 20:56:58,995 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-14 20:56:58,995 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-14 20:56:58,996 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-14 20:56:58,996 INFO L272 TraceCheckUtils]: 4: Hoare triple {587#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {587#true} is VALID [2022-04-14 20:56:58,996 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-14 20:56:58,996 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-14 20:56:58,996 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-14 20:56:58,997 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-14 20:56:58,997 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-14 20:56:58,998 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-14 20:56:58,998 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-14 20:56:58,998 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-14 20:56:58,998 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-14 20:56:58,998 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-14 20:56:58,999 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-14 20:56:59,000 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-14 20:56:59,000 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-14 20:56:59,002 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| 100) 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-14 20:56:59,003 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-14 20:56:59,004 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-14 20:56:59,004 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| 100) 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-14 20:56:59,006 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-14 20:56:59,006 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-14 20:56:59,006 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-14 20:56:59,007 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-14 20:56:59,007 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-14 20:56:59,007 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:56:59,406 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-14 20:56:59,407 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-14 20:56:59,408 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-14 20:56:59,410 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-14 20:56:59,410 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| 100) 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-14 20:56:59,411 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-14 20:56:59,417 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-14 20:56:59,417 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| 100) 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-14 20:56:59,431 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-14 20:56:59,432 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-14 20:56:59,432 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-14 20:56:59,433 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-14 20:56:59,433 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-14 20:56:59,433 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-14 20:56:59,433 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-14 20:56:59,433 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-14 20:56:59,433 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-14 20:56:59,433 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-14 20:56:59,433 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-14 20:56:59,434 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-14 20:56:59,434 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-14 20:56:59,434 INFO L272 TraceCheckUtils]: 4: Hoare triple {587#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {587#true} is VALID [2022-04-14 20:56:59,434 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-14 20:56:59,434 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-14 20:56:59,434 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-14 20:56:59,434 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-14 20:56:59,435 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-14 20:56:59,435 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:56:59,435 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1498541801] [2022-04-14 20:56:59,435 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:56:59,435 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [218783649] [2022-04-14 20:56:59,435 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [218783649] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-14 20:56:59,435 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-14 20:56:59,435 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-14 20:56:59,435 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [288149749] [2022-04-14 20:56:59,436 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:56:59,436 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-14 20:56:59,436 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:56:59,436 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-14 20:56:59,463 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-14 20:56:59,463 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-14 20:56:59,463 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:56:59,464 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-14 20:56:59,464 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-14 20:56:59,464 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-14 20:57:01,796 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-14 20:57:01,932 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:01,932 INFO L93 Difference]: Finished difference Result 40 states and 48 transitions. [2022-04-14 20:57:01,932 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 20:57:01,932 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-14 20:57:01,933 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:57:01,933 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-14 20:57:01,934 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 49 transitions. [2022-04-14 20:57:01,934 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-14 20:57:01,935 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 49 transitions. [2022-04-14 20:57:01,935 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 49 transitions. [2022-04-14 20:57:01,989 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-14 20:57:01,990 INFO L225 Difference]: With dead ends: 40 [2022-04-14 20:57:01,990 INFO L226 Difference]: Without dead ends: 39 [2022-04-14 20:57:01,991 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-14 20:57:01,991 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 12 mSDsluCounter, 75 mSDsCounter, 0 mSdLazyCounter, 36 mSolverCounterSat, 3 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.2s 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, 2.2s IncrementalHoareTripleChecker+Time [2022-04-14 20:57:01,991 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 104 Invalid, 40 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 36 Invalid, 1 Unknown, 0 Unchecked, 2.2s Time] [2022-04-14 20:57:01,992 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2022-04-14 20:57:01,995 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 39. [2022-04-14 20:57:01,995 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:57:01,995 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-14 20:57:01,995 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-14 20:57:01,996 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-14 20:57:01,997 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:01,997 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-14 20:57:01,997 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-14 20:57:01,997 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:57:01,997 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:57:01,998 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-14 20:57:01,998 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-14 20:57:01,999 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:01,999 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-14 20:57:01,999 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-14 20:57:02,000 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:57:02,000 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:57:02,000 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:57:02,000 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:57:02,000 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-14 20:57:02,001 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 46 transitions. [2022-04-14 20:57:02,001 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 46 transitions. Word has length 26 [2022-04-14 20:57:02,001 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:57:02,001 INFO L478 AbstractCegarLoop]: Abstraction has 39 states and 46 transitions. [2022-04-14 20:57:02,002 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-14 20:57:02,002 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 46 transitions. [2022-04-14 20:57:02,002 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-14 20:57:02,002 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:57:02,002 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-14 20:57:02,021 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-14 20:57:02,202 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-14 20:57:02,203 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:57:02,203 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:57:02,203 INFO L85 PathProgramCache]: Analyzing trace with hash -1664227005, now seen corresponding path program 1 times [2022-04-14 20:57:02,203 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:57:02,204 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1756637767] [2022-04-14 20:57:02,204 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:57:02,204 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:57:02,217 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:57:02,217 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [240303534] [2022-04-14 20:57:02,217 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:57:02,218 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:57:02,218 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:57:02,219 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-14 20:57:02,231 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-14 20:57:02,262 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:57:02,263 INFO L263 TraceCheckSpWp]: Trace formula consists of 98 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-14 20:57:02,272 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:57:02,273 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:57:02,406 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-14 20:57:02,407 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-14 20:57:02,408 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-14 20:57:02,408 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-14 20:57:02,408 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-14 20:57:02,409 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-14 20:57:02,409 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-14 20:57:02,410 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-14 20:57:02,410 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-14 20:57:02,410 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-14 20:57:02,411 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-14 20:57:02,411 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-14 20:57:02,411 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-14 20:57:02,412 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-14 20:57:02,412 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-14 20:57:02,412 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-14 20:57:02,413 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-14 20:57:02,413 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-14 20:57:02,413 INFO L290 TraceCheckUtils]: 18: Hoare triple {969#(<= ~counter~0 1)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 100) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {969#(<= ~counter~0 1)} is VALID [2022-04-14 20:57:02,414 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-14 20:57:02,414 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-14 20:57:02,415 INFO L290 TraceCheckUtils]: 21: Hoare triple {979#(<= |main_#t~post3| 1)} [109] L36-1-->L45-2: Formula: (not (< |v_main_#t~post3_3| 100)) InVars {main_#t~post3=|v_main_#t~post3_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {913#false} is VALID [2022-04-14 20:57:02,415 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-14 20:57:02,415 INFO L290 TraceCheckUtils]: 23: Hoare triple {913#false} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 100)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {913#false} is VALID [2022-04-14 20:57:02,415 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-14 20:57:02,415 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-14 20:57:02,415 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-14 20:57:02,416 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-14 20:57:02,416 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-14 20:57:02,416 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:57:02,579 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-14 20:57:02,579 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-14 20:57:02,579 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-14 20:57:02,579 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-14 20:57:02,579 INFO L290 TraceCheckUtils]: 23: Hoare triple {913#false} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 100)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {913#false} is VALID [2022-04-14 20:57:02,580 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-14 20:57:02,580 INFO L290 TraceCheckUtils]: 21: Hoare triple {1019#(< |main_#t~post3| 100)} [109] L36-1-->L45-2: Formula: (not (< |v_main_#t~post3_3| 100)) InVars {main_#t~post3=|v_main_#t~post3_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {913#false} is VALID [2022-04-14 20:57:02,582 INFO L290 TraceCheckUtils]: 20: Hoare triple {1023#(< ~counter~0 100)} [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| 100)} is VALID [2022-04-14 20:57:02,582 INFO L290 TraceCheckUtils]: 19: Hoare triple {1023#(< ~counter~0 100)} [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 100)} is VALID [2022-04-14 20:57:02,583 INFO L290 TraceCheckUtils]: 18: Hoare triple {1023#(< ~counter~0 100)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 100) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1023#(< ~counter~0 100)} is VALID [2022-04-14 20:57:02,583 INFO L290 TraceCheckUtils]: 17: Hoare triple {1033#(< ~counter~0 99)} [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 100)} is VALID [2022-04-14 20:57:02,583 INFO L290 TraceCheckUtils]: 16: Hoare triple {1033#(< ~counter~0 99)} [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 99)} is VALID [2022-04-14 20:57:02,584 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {912#true} {1033#(< ~counter~0 99)} [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 99)} is VALID [2022-04-14 20:57:02,585 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-14 20:57:02,585 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-14 20:57:02,585 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-14 20:57:02,585 INFO L272 TraceCheckUtils]: 11: Hoare triple {1033#(< ~counter~0 99)} [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-14 20:57:02,585 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {912#true} {1033#(< ~counter~0 99)} [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 99)} is VALID [2022-04-14 20:57:02,585 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-14 20:57:02,585 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-14 20:57:02,586 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-14 20:57:02,586 INFO L272 TraceCheckUtils]: 6: Hoare triple {1033#(< ~counter~0 99)} [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-14 20:57:02,586 INFO L290 TraceCheckUtils]: 5: Hoare triple {1033#(< ~counter~0 99)} [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 99)} is VALID [2022-04-14 20:57:02,586 INFO L272 TraceCheckUtils]: 4: Hoare triple {1033#(< ~counter~0 99)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1033#(< ~counter~0 99)} is VALID [2022-04-14 20:57:02,587 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1033#(< ~counter~0 99)} {912#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1033#(< ~counter~0 99)} is VALID [2022-04-14 20:57:02,587 INFO L290 TraceCheckUtils]: 2: Hoare triple {1033#(< ~counter~0 99)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1033#(< ~counter~0 99)} is VALID [2022-04-14 20:57:02,588 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 99)} is VALID [2022-04-14 20:57:02,588 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-14 20:57:02,588 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-14 20:57:02,588 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:57:02,588 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1756637767] [2022-04-14 20:57:02,588 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:57:02,588 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [240303534] [2022-04-14 20:57:02,588 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [240303534] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 20:57:02,588 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 20:57:02,589 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-14 20:57:02,589 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [131215962] [2022-04-14 20:57:02,589 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 20:57:02,589 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-14 20:57:02,590 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:57:02,590 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-14 20:57:02,622 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-14 20:57:02,622 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-14 20:57:02,622 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:57:02,623 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-14 20:57:02,623 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-14 20:57:02,623 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-14 20:57:02,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:02,900 INFO L93 Difference]: Finished difference Result 61 states and 74 transitions. [2022-04-14 20:57:02,900 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-14 20:57:02,900 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-14 20:57:02,900 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:57:02,900 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-14 20:57:02,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 77 transitions. [2022-04-14 20:57:02,902 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-14 20:57:02,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 77 transitions. [2022-04-14 20:57:02,904 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 77 transitions. [2022-04-14 20:57:02,975 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-14 20:57:02,977 INFO L225 Difference]: With dead ends: 61 [2022-04-14 20:57:02,977 INFO L226 Difference]: Without dead ends: 61 [2022-04-14 20:57:02,977 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-14 20:57:02,977 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-14 20:57:02,978 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-14 20:57:02,978 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states. [2022-04-14 20:57:02,980 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 47. [2022-04-14 20:57:02,980 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:57:02,981 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-14 20:57:02,981 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-14 20:57:02,981 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-14 20:57:02,983 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:02,983 INFO L93 Difference]: Finished difference Result 61 states and 74 transitions. [2022-04-14 20:57:02,983 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 74 transitions. [2022-04-14 20:57:02,983 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:57:02,983 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:57:02,983 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-14 20:57:02,984 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-14 20:57:02,985 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:02,985 INFO L93 Difference]: Finished difference Result 61 states and 74 transitions. [2022-04-14 20:57:02,985 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 74 transitions. [2022-04-14 20:57:02,986 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:57:02,986 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:57:02,986 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:57:02,986 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:57:02,986 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-14 20:57:02,987 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 56 transitions. [2022-04-14 20:57:02,987 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 56 transitions. Word has length 28 [2022-04-14 20:57:02,987 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:57:02,988 INFO L478 AbstractCegarLoop]: Abstraction has 47 states and 56 transitions. [2022-04-14 20:57:02,988 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-14 20:57:02,988 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 56 transitions. [2022-04-14 20:57:02,988 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-14 20:57:02,988 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:57:02,988 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-14 20:57:03,007 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-14 20:57:03,203 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-14 20:57:03,203 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:57:03,204 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:57:03,204 INFO L85 PathProgramCache]: Analyzing trace with hash -1687306486, now seen corresponding path program 1 times [2022-04-14 20:57:03,204 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:57:03,204 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2089355458] [2022-04-14 20:57:03,204 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:57:03,204 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:57:03,222 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:57:03,222 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [770565704] [2022-04-14 20:57:03,222 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:57:03,222 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:57:03,222 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:57:03,231 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-14 20:57:03,236 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-14 20:57:03,270 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:57:03,271 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 20:57:03,276 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:57:03,278 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:57:03,434 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-14 20:57:03,435 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-14 20:57:03,435 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-14 20:57:03,435 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-14 20:57:03,436 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-14 20:57:03,436 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-14 20:57:03,436 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-14 20:57:03,440 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-14 20:57:03,440 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-14 20:57:03,441 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-14 20:57:03,441 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-14 20:57:03,442 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-14 20:57:03,442 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-14 20:57:03,442 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-14 20:57:03,443 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-14 20:57:03,444 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-14 20:57:03,444 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-14 20:57:03,445 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-14 20:57:03,445 INFO L290 TraceCheckUtils]: 18: Hoare triple {1380#(<= ~counter~0 1)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 100) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1380#(<= ~counter~0 1)} is VALID [2022-04-14 20:57:03,445 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-14 20:57:03,446 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-14 20:57:03,446 INFO L290 TraceCheckUtils]: 21: Hoare triple {1390#(<= ~counter~0 2)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 100) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1390#(<= ~counter~0 2)} is VALID [2022-04-14 20:57:03,446 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-14 20:57:03,447 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-14 20:57:03,447 INFO L290 TraceCheckUtils]: 24: Hoare triple {1400#(<= |main_#t~post4| 2)} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 100)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1324#false} is VALID [2022-04-14 20:57:03,447 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-14 20:57:03,447 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-14 20:57:03,447 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-14 20:57:03,448 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-14 20:57:03,448 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-14 20:57:03,448 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:57:03,635 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-14 20:57:03,635 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-14 20:57:03,635 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-14 20:57:03,635 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-14 20:57:03,636 INFO L290 TraceCheckUtils]: 24: Hoare triple {1428#(< |main_#t~post4| 100)} [112] L40-->L40-2: Formula: (not (< |v_main_#t~post4_3| 100)) InVars {main_#t~post4=|v_main_#t~post4_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {1324#false} is VALID [2022-04-14 20:57:03,636 INFO L290 TraceCheckUtils]: 23: Hoare triple {1432#(< ~counter~0 100)} [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| 100)} is VALID [2022-04-14 20:57:03,637 INFO L290 TraceCheckUtils]: 22: Hoare triple {1432#(< ~counter~0 100)} [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 100)} is VALID [2022-04-14 20:57:03,637 INFO L290 TraceCheckUtils]: 21: Hoare triple {1432#(< ~counter~0 100)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 100) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1432#(< ~counter~0 100)} is VALID [2022-04-14 20:57:03,638 INFO L290 TraceCheckUtils]: 20: Hoare triple {1442#(< ~counter~0 99)} [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 100)} is VALID [2022-04-14 20:57:03,638 INFO L290 TraceCheckUtils]: 19: Hoare triple {1442#(< ~counter~0 99)} [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 99)} is VALID [2022-04-14 20:57:03,638 INFO L290 TraceCheckUtils]: 18: Hoare triple {1442#(< ~counter~0 99)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 100) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {1442#(< ~counter~0 99)} is VALID [2022-04-14 20:57:03,639 INFO L290 TraceCheckUtils]: 17: Hoare triple {1452#(< ~counter~0 98)} [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 99)} is VALID [2022-04-14 20:57:03,639 INFO L290 TraceCheckUtils]: 16: Hoare triple {1452#(< ~counter~0 98)} [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 98)} is VALID [2022-04-14 20:57:03,640 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1323#true} {1452#(< ~counter~0 98)} [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 98)} is VALID [2022-04-14 20:57:03,640 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-14 20:57:03,640 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-14 20:57:03,640 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-14 20:57:03,640 INFO L272 TraceCheckUtils]: 11: Hoare triple {1452#(< ~counter~0 98)} [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-14 20:57:03,641 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1323#true} {1452#(< ~counter~0 98)} [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 98)} is VALID [2022-04-14 20:57:03,641 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-14 20:57:03,646 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-14 20:57:03,646 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-14 20:57:03,647 INFO L272 TraceCheckUtils]: 6: Hoare triple {1452#(< ~counter~0 98)} [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-14 20:57:03,648 INFO L290 TraceCheckUtils]: 5: Hoare triple {1452#(< ~counter~0 98)} [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 98)} is VALID [2022-04-14 20:57:03,652 INFO L272 TraceCheckUtils]: 4: Hoare triple {1452#(< ~counter~0 98)} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1452#(< ~counter~0 98)} is VALID [2022-04-14 20:57:03,654 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1452#(< ~counter~0 98)} {1323#true} [129] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1452#(< ~counter~0 98)} is VALID [2022-04-14 20:57:03,654 INFO L290 TraceCheckUtils]: 2: Hoare triple {1452#(< ~counter~0 98)} [97] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1452#(< ~counter~0 98)} is VALID [2022-04-14 20:57:03,655 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 98)} is VALID [2022-04-14 20:57:03,655 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-14 20:57:03,656 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-14 20:57:03,657 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:57:03,657 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2089355458] [2022-04-14 20:57:03,657 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:57:03,657 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [770565704] [2022-04-14 20:57:03,657 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [770565704] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 20:57:03,657 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 20:57:03,657 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-14 20:57:03,657 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [830030602] [2022-04-14 20:57:03,657 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 20:57:03,658 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-14 20:57:03,688 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:57:03,688 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-14 20:57:03,722 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-14 20:57:03,722 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-14 20:57:03,722 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:57:03,723 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-14 20:57:03,723 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-14 20:57:03,723 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-14 20:57:04,098 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:04,098 INFO L93 Difference]: Finished difference Result 91 states and 110 transitions. [2022-04-14 20:57:04,098 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-14 20:57:04,099 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-14 20:57:04,099 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:57:04,099 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-14 20:57:04,101 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 114 transitions. [2022-04-14 20:57:04,101 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-14 20:57:04,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 114 transitions. [2022-04-14 20:57:04,103 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 114 transitions. [2022-04-14 20:57:04,209 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-14 20:57:04,211 INFO L225 Difference]: With dead ends: 91 [2022-04-14 20:57:04,211 INFO L226 Difference]: Without dead ends: 91 [2022-04-14 20:57:04,211 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-14 20:57:04,212 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-14 20:57:04,212 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-14 20:57:04,212 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2022-04-14 20:57:04,216 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 84. [2022-04-14 20:57:04,216 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:57:04,216 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-14 20:57:04,216 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-14 20:57:04,217 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-14 20:57:04,219 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:04,219 INFO L93 Difference]: Finished difference Result 91 states and 110 transitions. [2022-04-14 20:57:04,219 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 110 transitions. [2022-04-14 20:57:04,219 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:57:04,219 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:57:04,220 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-14 20:57:04,220 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-14 20:57:04,222 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:04,222 INFO L93 Difference]: Finished difference Result 91 states and 110 transitions. [2022-04-14 20:57:04,222 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 110 transitions. [2022-04-14 20:57:04,222 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:57:04,222 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:57:04,222 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:57:04,222 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:57:04,223 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-14 20:57:04,227 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 106 transitions. [2022-04-14 20:57:04,228 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 106 transitions. Word has length 29 [2022-04-14 20:57:04,228 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:57:04,228 INFO L478 AbstractCegarLoop]: Abstraction has 84 states and 106 transitions. [2022-04-14 20:57:04,228 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-14 20:57:04,228 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 106 transitions. [2022-04-14 20:57:04,230 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-14 20:57:04,230 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:57:04,230 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-14 20:57:04,251 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-14 20:57:04,438 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-14 20:57:04,439 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:57:04,439 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:57:04,439 INFO L85 PathProgramCache]: Analyzing trace with hash -1686174428, now seen corresponding path program 1 times [2022-04-14 20:57:04,439 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:57:04,439 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1905811099] [2022-04-14 20:57:04,439 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:57:04,439 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:57:04,453 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:57:04,453 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [107450389] [2022-04-14 20:57:04,453 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:57:04,453 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:57:04,453 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:57:04,454 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-14 20:57:04,455 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-14 20:57:04,491 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:57:04,492 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-14 20:57:04,501 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:57:04,502 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:57:05,043 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-14 20:57:05,043 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-14 20:57:05,044 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-14 20:57:05,044 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-14 20:57:05,044 INFO L272 TraceCheckUtils]: 4: Hoare triple {1871#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1871#true} is VALID [2022-04-14 20:57:05,044 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-14 20:57:05,044 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-14 20:57:05,044 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-14 20:57:05,044 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-14 20:57:05,044 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-14 20:57:05,044 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-14 20:57:05,044 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-14 20:57:05,045 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-14 20:57:05,045 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-14 20:57:05,045 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-14 20:57:05,046 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-14 20:57:05,046 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-14 20:57:05,047 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-14 20:57:05,047 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| 100) 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-14 20:57:05,048 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-14 20:57:05,048 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-14 20:57:05,049 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| 100) 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-14 20:57:05,049 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-14 20:57:05,050 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-14 20:57:05,050 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| 100) 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-14 20:57:05,051 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-14 20:57:05,051 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-14 20:57:05,052 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-14 20:57:05,052 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-14 20:57:05,052 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-14 20:57:05,052 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:57:05,696 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-14 20:57:05,697 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-14 20:57:05,697 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-14 20:57:05,698 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-14 20:57:05,699 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| 100) 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-14 20:57:05,699 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-14 20:57:05,700 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-14 20:57:05,700 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| 100) 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-14 20:57:05,701 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-14 20:57:05,701 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-14 20:57:05,702 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| 100) 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-14 20:57:05,703 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-14 20:57:05,703 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-14 20:57:05,703 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-14 20:57:05,704 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-14 20:57:05,704 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-14 20:57:05,704 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-14 20:57:05,704 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-14 20:57:05,704 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-14 20:57:05,704 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-14 20:57:05,704 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-14 20:57:05,704 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-14 20:57:05,704 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-14 20:57:05,704 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-14 20:57:05,704 INFO L272 TraceCheckUtils]: 4: Hoare triple {1871#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1871#true} is VALID [2022-04-14 20:57:05,705 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-14 20:57:05,705 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-14 20:57:05,705 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-14 20:57:05,705 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-14 20:57:05,705 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-14 20:57:05,705 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:57:05,705 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1905811099] [2022-04-14 20:57:05,705 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:57:05,705 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [107450389] [2022-04-14 20:57:05,706 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [107450389] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-14 20:57:05,706 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-14 20:57:05,706 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [9] total 11 [2022-04-14 20:57:05,706 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [811302674] [2022-04-14 20:57:05,706 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:57:05,706 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-14 20:57:05,706 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:57:05,707 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-14 20:57:07,751 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-14 20:57:07,752 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-14 20:57:07,752 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:57:07,752 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-14 20:57:07,752 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=86, Unknown=0, NotChecked=0, Total=110 [2022-04-14 20:57:07,752 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-14 20:57:07,930 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:07,930 INFO L93 Difference]: Finished difference Result 115 states and 138 transitions. [2022-04-14 20:57:07,930 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-14 20:57:07,931 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-14 20:57:07,931 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:57:07,931 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-14 20:57:07,932 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2022-04-14 20:57:07,932 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-14 20:57:07,933 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2022-04-14 20:57:07,933 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 48 transitions. [2022-04-14 20:57:10,044 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 47 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-14 20:57:10,046 INFO L225 Difference]: With dead ends: 115 [2022-04-14 20:57:10,046 INFO L226 Difference]: Without dead ends: 115 [2022-04-14 20:57:10,047 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-14 20:57:10,047 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-14 20:57:10,047 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-14 20:57:10,048 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 115 states. [2022-04-14 20:57:10,053 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 115 to 114. [2022-04-14 20:57:10,053 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:57:10,053 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-14 20:57:10,053 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-14 20:57:10,054 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-14 20:57:10,056 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:10,057 INFO L93 Difference]: Finished difference Result 115 states and 138 transitions. [2022-04-14 20:57:10,057 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 138 transitions. [2022-04-14 20:57:10,057 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:57:10,057 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:57:10,058 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-14 20:57:10,058 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-14 20:57:10,061 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:10,061 INFO L93 Difference]: Finished difference Result 115 states and 138 transitions. [2022-04-14 20:57:10,061 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 138 transitions. [2022-04-14 20:57:10,061 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:57:10,061 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:57:10,061 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:57:10,061 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:57:10,062 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-14 20:57:10,064 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 114 states to 114 states and 137 transitions. [2022-04-14 20:57:10,064 INFO L78 Accepts]: Start accepts. Automaton has 114 states and 137 transitions. Word has length 29 [2022-04-14 20:57:10,064 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:57:10,064 INFO L478 AbstractCegarLoop]: Abstraction has 114 states and 137 transitions. [2022-04-14 20:57:10,065 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-14 20:57:10,065 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 137 transitions. [2022-04-14 20:57:10,065 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-14 20:57:10,065 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:57:10,065 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-14 20:57:10,082 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-14 20:57:10,279 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-14 20:57:10,280 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:57:10,280 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:57:10,280 INFO L85 PathProgramCache]: Analyzing trace with hash -665062919, now seen corresponding path program 1 times [2022-04-14 20:57:10,280 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:57:10,280 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2123435879] [2022-04-14 20:57:10,280 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:57:10,280 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:57:10,299 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:57:10,299 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1055806728] [2022-04-14 20:57:10,299 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:57:10,299 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:57:10,299 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:57:10,300 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-14 20:57:10,307 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-14 20:57:10,341 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:57:10,342 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 3 conjunts are in the unsatisfiable core [2022-04-14 20:57:10,350 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:57:10,350 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:57:10,419 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-14 20:57:10,420 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-14 20:57:10,420 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-14 20:57:10,420 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-14 20:57:10,420 INFO L272 TraceCheckUtils]: 4: Hoare triple {2516#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2516#true} is VALID [2022-04-14 20:57:10,420 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-14 20:57:10,420 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-14 20:57:10,420 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-14 20:57:10,420 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-14 20:57:10,420 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-14 20:57:10,420 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-14 20:57:10,420 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-14 20:57:10,420 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-14 20:57:10,421 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-14 20:57:10,421 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-14 20:57:10,421 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-14 20:57:10,422 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-14 20:57:10,422 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-14 20:57:10,422 INFO L290 TraceCheckUtils]: 18: Hoare triple {2569#(= main_~B~0 main_~b~0)} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 100) 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-14 20:57:10,423 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-14 20:57:10,423 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-14 20:57:10,423 INFO L290 TraceCheckUtils]: 21: Hoare triple {2569#(= main_~B~0 main_~b~0)} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 100) 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-14 20:57:10,423 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-14 20:57:10,423 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-14 20:57:10,424 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-14 20:57:10,424 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-14 20:57:10,424 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-14 20:57:10,425 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-14 20:57:10,425 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-14 20:57:10,425 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-14 20:57:10,425 INFO L290 TraceCheckUtils]: 30: Hoare triple {2517#false} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 100) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {2517#false} is VALID [2022-04-14 20:57:10,425 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-14 20:57:10,425 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-14 20:57:10,425 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-14 20:57:10,425 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-14 20:57:10,425 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-14 20:57:10,425 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 20:57:10,426 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:57:10,426 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2123435879] [2022-04-14 20:57:10,426 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:57:10,426 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1055806728] [2022-04-14 20:57:10,426 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1055806728] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:57:10,426 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:57:10,426 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-14 20:57:10,426 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1073529103] [2022-04-14 20:57:10,426 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:57:10,426 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-14 20:57:10,427 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:57:10,427 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-14 20:57:10,456 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-14 20:57:10,456 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-14 20:57:10,457 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:57:10,457 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-14 20:57:10,457 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 20:57:10,457 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-14 20:57:10,522 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:10,522 INFO L93 Difference]: Finished difference Result 110 states and 130 transitions. [2022-04-14 20:57:10,522 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-14 20:57:10,522 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-14 20:57:10,523 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:57:10,523 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-14 20:57:10,524 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 43 transitions. [2022-04-14 20:57:10,525 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-14 20:57:10,525 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 43 transitions. [2022-04-14 20:57:10,525 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 43 transitions. [2022-04-14 20:57:10,559 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-14 20:57:10,561 INFO L225 Difference]: With dead ends: 110 [2022-04-14 20:57:10,561 INFO L226 Difference]: Without dead ends: 100 [2022-04-14 20:57:10,561 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-14 20:57:10,562 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-14 20:57:10,562 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-14 20:57:10,562 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2022-04-14 20:57:10,566 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 100. [2022-04-14 20:57:10,566 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:57:10,567 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-14 20:57:10,567 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-14 20:57:10,567 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-14 20:57:10,570 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:10,570 INFO L93 Difference]: Finished difference Result 100 states and 120 transitions. [2022-04-14 20:57:10,570 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 120 transitions. [2022-04-14 20:57:10,571 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:57:10,571 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:57:10,571 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-14 20:57:10,571 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-14 20:57:10,574 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:10,574 INFO L93 Difference]: Finished difference Result 100 states and 120 transitions. [2022-04-14 20:57:10,574 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 120 transitions. [2022-04-14 20:57:10,574 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:57:10,574 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:57:10,574 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:57:10,574 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:57:10,575 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-14 20:57:10,577 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 100 states to 100 states and 120 transitions. [2022-04-14 20:57:10,577 INFO L78 Accepts]: Start accepts. Automaton has 100 states and 120 transitions. Word has length 35 [2022-04-14 20:57:10,578 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:57:10,578 INFO L478 AbstractCegarLoop]: Abstraction has 100 states and 120 transitions. [2022-04-14 20:57:10,578 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-14 20:57:10,578 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 120 transitions. [2022-04-14 20:57:10,578 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-14 20:57:10,578 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:57:10,578 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-14 20:57:10,597 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-14 20:57:10,791 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-14 20:57:10,791 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:57:10,792 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:57:10,792 INFO L85 PathProgramCache]: Analyzing trace with hash 1800746756, now seen corresponding path program 1 times [2022-04-14 20:57:10,792 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:57:10,792 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [946037690] [2022-04-14 20:57:10,792 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:57:10,792 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:57:10,812 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:57:10,812 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [712115106] [2022-04-14 20:57:10,812 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:57:10,812 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:57:10,813 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:57:10,815 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-14 20:57:10,820 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-14 20:57:10,853 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:57:10,854 INFO L263 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-14 20:57:10,861 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:57:10,862 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:57:11,068 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-14 20:57:11,068 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-14 20:57:11,069 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-14 20:57:11,069 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-14 20:57:11,069 INFO L272 TraceCheckUtils]: 4: Hoare triple {3033#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3033#true} is VALID [2022-04-14 20:57:11,069 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-14 20:57:11,069 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-14 20:57:11,069 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-14 20:57:11,069 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-14 20:57:11,069 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-14 20:57:11,069 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-14 20:57:11,069 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-14 20:57:11,069 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-14 20:57:11,069 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-14 20:57:11,069 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-14 20:57:11,069 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-14 20:57:11,070 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-14 20:57:11,070 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-14 20:57:11,070 INFO L290 TraceCheckUtils]: 18: Hoare triple {3033#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 100) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3033#true} is VALID [2022-04-14 20:57:11,070 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-14 20:57:11,070 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-14 20:57:11,070 INFO L290 TraceCheckUtils]: 21: Hoare triple {3033#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 100) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3033#true} is VALID [2022-04-14 20:57:11,070 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-14 20:57:11,070 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-14 20:57:11,070 INFO L290 TraceCheckUtils]: 24: Hoare triple {3033#true} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 100) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {3033#true} is VALID [2022-04-14 20:57:11,070 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-14 20:57:11,080 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-14 20:57:11,081 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-14 20:57:11,081 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-14 20:57:11,082 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-14 20:57:11,082 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-14 20:57:11,083 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-14 20:57:11,083 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-14 20:57:11,084 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-14 20:57:11,084 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-14 20:57:11,084 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-14 20:57:11,084 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:57:11,865 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-14 20:57:11,866 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-14 20:57:11,867 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-14 20:57:11,867 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-14 20:57:11,870 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-14 20:57:11,871 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-14 20:57:11,871 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-14 20:57:11,871 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-14 20:57:11,872 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-14 20:57:11,872 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-14 20:57:11,872 INFO L290 TraceCheckUtils]: 24: Hoare triple {3033#true} [113] L40-->L41: Formula: (< |v_main_#t~post4_5| 100) InVars {main_#t~post4=|v_main_#t~post4_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post4] {3033#true} is VALID [2022-04-14 20:57:11,872 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-14 20:57:11,872 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-14 20:57:11,872 INFO L290 TraceCheckUtils]: 21: Hoare triple {3033#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 100) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3033#true} is VALID [2022-04-14 20:57:11,872 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-14 20:57:11,872 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-14 20:57:11,872 INFO L290 TraceCheckUtils]: 18: Hoare triple {3033#true} [110] L36-1-->L37: Formula: (< |v_main_#t~post3_5| 100) InVars {main_#t~post3=|v_main_#t~post3_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post3] {3033#true} is VALID [2022-04-14 20:57:11,872 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-14 20:57:11,872 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-14 20:57:11,873 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-14 20:57:11,873 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-14 20:57:11,873 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-14 20:57:11,873 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-14 20:57:11,873 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-14 20:57:11,873 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-14 20:57:11,873 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-14 20:57:11,873 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-14 20:57:11,873 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-14 20:57:11,873 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-14 20:57:11,873 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-14 20:57:11,873 INFO L272 TraceCheckUtils]: 4: Hoare triple {3033#true} [93] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3033#true} is VALID [2022-04-14 20:57:11,873 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-14 20:57:11,873 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-14 20:57:11,873 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-14 20:57:11,874 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-14 20:57:11,874 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-14 20:57:11,874 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:57:11,874 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [946037690] [2022-04-14 20:57:11,874 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:57:11,874 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [712115106] [2022-04-14 20:57:11,874 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [712115106] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 20:57:11,874 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 20:57:11,874 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6] total 9 [2022-04-14 20:57:11,874 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1944125332] [2022-04-14 20:57:11,874 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 20:57:11,875 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-14 20:57:11,875 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:57:11,876 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-14 20:57:11,900 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-14 20:57:11,900 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-14 20:57:11,900 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:57:11,900 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-14 20:57:11,900 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-04-14 20:57:11,901 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-14 20:57:14,383 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:14,384 INFO L93 Difference]: Finished difference Result 113 states and 129 transitions. [2022-04-14 20:57:14,384 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-14 20:57:14,384 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-14 20:57:14,384 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:57:14,384 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-14 20:57:14,385 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 42 transitions. [2022-04-14 20:57:14,385 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-14 20:57:14,386 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 42 transitions. [2022-04-14 20:57:14,386 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 42 transitions. [2022-04-14 20:57:14,420 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-14 20:57:14,421 INFO L225 Difference]: With dead ends: 113 [2022-04-14 20:57:14,421 INFO L226 Difference]: Without dead ends: 95 [2022-04-14 20:57:14,421 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-14 20:57:14,422 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 12 mSDsluCounter, 145 mSDsCounter, 0 mSdLazyCounter, 58 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 174 SdHoareTripleChecker+Invalid, 61 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 58 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-14 20:57:14,422 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 174 Invalid, 61 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 58 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-14 20:57:14,422 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states. [2022-04-14 20:57:14,425 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 95. [2022-04-14 20:57:14,425 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:57:14,426 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-14 20:57:14,426 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-14 20:57:14,426 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-14 20:57:14,428 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:14,428 INFO L93 Difference]: Finished difference Result 95 states and 111 transitions. [2022-04-14 20:57:14,428 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 111 transitions. [2022-04-14 20:57:14,428 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:57:14,428 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:57:14,429 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-14 20:57:14,429 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-14 20:57:14,431 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:57:14,431 INFO L93 Difference]: Finished difference Result 95 states and 111 transitions. [2022-04-14 20:57:14,431 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 111 transitions. [2022-04-14 20:57:14,431 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:57:14,431 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:57:14,431 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:57:14,431 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:57:14,431 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-14 20:57:14,433 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 95 states to 95 states and 111 transitions. [2022-04-14 20:57:14,433 INFO L78 Accepts]: Start accepts. Automaton has 95 states and 111 transitions. Word has length 35 [2022-04-14 20:57:14,433 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:57:14,433 INFO L478 AbstractCegarLoop]: Abstraction has 95 states and 111 transitions. [2022-04-14 20:57:14,434 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-14 20:57:14,434 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 111 transitions. [2022-04-14 20:57:14,434 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-14 20:57:14,434 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:57:14,434 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-14 20:57:14,452 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-04-14 20:57:14,645 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-14 20:57:14,647 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:57:14,648 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:57:14,648 INFO L85 PathProgramCache]: Analyzing trace with hash 1291395213, now seen corresponding path program 1 times [2022-04-14 20:57:14,648 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:57:14,648 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1764676169] [2022-04-14 20:57:14,648 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:57:14,648 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:57:14,660 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:57:14,660 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [663079053] [2022-04-14 20:57:14,660 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:57:14,660 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:57:14,660 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:57:14,668 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-14 20:57:14,670 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process