/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/divbin2_valuebound20.i -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 17:57:29,393 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 17:57:29,394 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 17:57:29,432 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 17:57:29,433 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 17:57:29,433 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 17:57:29,434 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 17:57:29,435 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 17:57:29,436 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 17:57:29,437 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 17:57:29,437 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 17:57:29,438 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 17:57:29,438 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 17:57:29,439 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 17:57:29,439 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 17:57:29,440 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 17:57:29,440 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 17:57:29,441 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 17:57:29,442 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 17:57:29,443 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 17:57:29,444 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 17:57:29,446 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 17:57:29,447 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 17:57:29,448 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 17:57:29,448 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 17:57:29,450 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 17:57:29,450 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 17:57:29,450 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 17:57:29,451 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 17:57:29,451 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 17:57:29,451 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 17:57:29,452 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 17:57:29,452 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 17:57:29,452 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 17:57:29,453 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 17:57:29,453 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 17:57:29,454 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 17:57:29,454 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 17:57:29,454 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 17:57:29,454 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 17:57:29,455 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 17:57:29,455 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 17:57:29,456 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-27 17:57:29,462 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 17:57:29,462 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 17:57:29,463 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 17:57:29,463 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 17:57:29,463 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 17:57:29,463 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 17:57:29,463 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 17:57:29,463 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 17:57:29,463 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 17:57:29,464 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 17:57:29,464 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 17:57:29,464 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 17:57:29,464 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 17:57:29,464 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 17:57:29,464 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 17:57:29,464 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 17:57:29,464 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-27 17:57:29,464 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 17:57:29,465 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 17:57:29,465 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 17:57:29,465 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 17:57:29,465 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-27 17:57:29,465 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-27 17:57:29,611 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 17:57:29,629 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 17:57:29,630 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 17:57:29,631 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 17:57:29,632 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 17:57:29,633 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/divbin2_valuebound20.i [2022-04-27 17:57:29,674 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d6700a780/b3869fcbeb854b1e9c6b861417eda999/FLAGb39d60c80 [2022-04-27 17:57:30,004 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 17:57:30,004 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/divbin2_valuebound20.i [2022-04-27 17:57:30,008 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d6700a780/b3869fcbeb854b1e9c6b861417eda999/FLAGb39d60c80 [2022-04-27 17:57:30,439 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d6700a780/b3869fcbeb854b1e9c6b861417eda999 [2022-04-27 17:57:30,441 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 17:57:30,441 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-27 17:57:30,442 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 17:57:30,443 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 17:57:30,444 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 17:57:30,445 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 05:57:30" (1/1) ... [2022-04-27 17:57:30,446 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@48b4df2a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:57:30, skipping insertion in model container [2022-04-27 17:57:30,446 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 05:57:30" (1/1) ... [2022-04-27 17:57:30,450 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 17:57:30,463 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 17:57:30,577 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/divbin2_valuebound20.i[951,964] [2022-04-27 17:57:30,588 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 17:57:30,594 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 17:57:30,602 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/divbin2_valuebound20.i[951,964] [2022-04-27 17:57:30,606 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 17:57:30,618 INFO L208 MainTranslator]: Completed translation [2022-04-27 17:57:30,618 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:57:30 WrapperNode [2022-04-27 17:57:30,618 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 17:57:30,619 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 17:57:30,619 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 17:57:30,619 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 17:57:30,625 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:57:30" (1/1) ... [2022-04-27 17:57:30,626 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:57:30" (1/1) ... [2022-04-27 17:57:30,630 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:57:30" (1/1) ... [2022-04-27 17:57:30,630 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:57:30" (1/1) ... [2022-04-27 17:57:30,634 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:57:30" (1/1) ... [2022-04-27 17:57:30,637 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:57:30" (1/1) ... [2022-04-27 17:57:30,638 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:57:30" (1/1) ... [2022-04-27 17:57:30,639 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 17:57:30,640 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 17:57:30,640 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 17:57:30,640 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 17:57:30,640 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:57:30" (1/1) ... [2022-04-27 17:57:30,647 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 17:57:30,654 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:57:30,663 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-27 17:57:30,672 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-27 17:57:30,688 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 17:57:30,688 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 17:57:30,688 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 17:57:30,688 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 17:57:30,688 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 17:57:30,689 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 17:57:30,689 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 17:57:30,689 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 17:57:30,689 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_perror_fail [2022-04-27 17:57:30,689 INFO L130 BoogieDeclarations]: Found specification of procedure __assert [2022-04-27 17:57:30,689 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 17:57:30,689 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 17:57:30,689 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-27 17:57:30,689 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 17:57:30,689 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 17:57:30,689 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 17:57:30,689 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 17:57:30,690 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 17:57:30,692 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 17:57:30,692 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 17:57:30,692 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 17:57:30,692 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 17:57:30,739 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 17:57:30,740 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 17:57:30,863 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 17:57:30,868 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 17:57:30,868 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-27 17:57:30,870 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 05:57:30 BoogieIcfgContainer [2022-04-27 17:57:30,870 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 17:57:30,870 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-27 17:57:30,870 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-27 17:57:30,872 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-27 17:57:30,874 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 05:57:30" (1/1) ... [2022-04-27 17:57:30,875 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-27 17:57:30,908 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 05:57:30 BasicIcfg [2022-04-27 17:57:30,908 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-27 17:57:30,914 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 17:57:30,914 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 17:57:30,917 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 17:57:30,918 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 05:57:30" (1/4) ... [2022-04-27 17:57:30,918 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@344ce3b0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 05:57:30, skipping insertion in model container [2022-04-27 17:57:30,918 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:57:30" (2/4) ... [2022-04-27 17:57:30,920 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@344ce3b0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 05:57:30, skipping insertion in model container [2022-04-27 17:57:30,921 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 05:57:30" (3/4) ... [2022-04-27 17:57:30,921 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@344ce3b0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 05:57:30, skipping insertion in model container [2022-04-27 17:57:30,921 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 05:57:30" (4/4) ... [2022-04-27 17:57:30,922 INFO L111 eAbstractionObserver]: Analyzing ICFG divbin2_valuebound20.iJordan [2022-04-27 17:57:30,935 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-27 17:57:30,936 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 17:57:30,963 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 17:57:30,976 INFO L357 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, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@7ccfac0f, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@1f26e175 [2022-04-27 17:57:30,976 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 17:57:30,985 INFO L276 IsEmpty]: Start isEmpty. Operand has 30 states, 19 states have (on average 1.5263157894736843) internal successors, (29), 20 states have internal predecessors, (29), 5 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-27 17:57:30,991 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-27 17:57:30,992 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:57:30,992 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 17:57:30,993 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:57:31,003 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:57:31,003 INFO L85 PathProgramCache]: Analyzing trace with hash 483266332, now seen corresponding path program 1 times [2022-04-27 17:57:31,011 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:57:31,012 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [953120171] [2022-04-27 17:57:31,012 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:57:31,013 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:57:31,111 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:57:31,164 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 17:57:31,167 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:57:31,176 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [89] 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) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#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[#NULL.offset, #NULL.base] {33#true} is VALID [2022-04-27 17:57:31,177 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-27 17:57:31,177 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {33#true} {33#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-27 17:57:31,177 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 17:57:31,179 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:57:31,184 INFO L290 TraceCheckUtils]: 0: Hoare triple {33#true} [95] 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] {33#true} is VALID [2022-04-27 17:57:31,184 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} [99] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-27 17:57:31,185 INFO L290 TraceCheckUtils]: 2: Hoare triple {34#false} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-27 17:57:31,185 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {34#false} {33#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 20) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {34#false} is VALID [2022-04-27 17:57:31,186 INFO L272 TraceCheckUtils]: 0: Hoare triple {33#true} [87] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 17:57:31,186 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [89] 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) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#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[#NULL.offset, #NULL.base] {33#true} is VALID [2022-04-27 17:57:31,186 INFO L290 TraceCheckUtils]: 2: Hoare triple {33#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-27 17:57:31,186 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33#true} {33#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-27 17:57:31,187 INFO L272 TraceCheckUtils]: 4: Hoare triple {33#true} [88] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-27 17:57:31,187 INFO L290 TraceCheckUtils]: 5: Hoare triple {33#true} [91] mainENTRY-->L29: Formula: (= v_main_~A~0_2 |v_main_#t~nondet1_2|) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_2, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {33#true} is VALID [2022-04-27 17:57:31,187 INFO L272 TraceCheckUtils]: 6: Hoare triple {33#true} [93] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 20) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {33#true} is VALID [2022-04-27 17:57:31,187 INFO L290 TraceCheckUtils]: 7: Hoare triple {33#true} [95] 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] {33#true} is VALID [2022-04-27 17:57:31,188 INFO L290 TraceCheckUtils]: 8: Hoare triple {33#true} [99] L16-->L16-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-27 17:57:31,188 INFO L290 TraceCheckUtils]: 9: Hoare triple {34#false} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-27 17:57:31,188 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {34#false} {33#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 20) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {34#false} is VALID [2022-04-27 17:57:31,188 INFO L290 TraceCheckUtils]: 11: Hoare triple {34#false} [94] L29-1-->L34-2: Formula: (and (= v_main_~B~0_4 v_main_~b~0_6) (= v_main_~q~0_5 0) (= v_main_~B~0_4 1) (= v_main_~A~0_6 v_main_~r~0_3)) InVars {main_~A~0=v_main_~A~0_6} OutVars{main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_4, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_6, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_~B~0, main_~b~0, main_~r~0] {34#false} is VALID [2022-04-27 17:57:31,188 INFO L290 TraceCheckUtils]: 12: Hoare triple {34#false} [96] L34-2-->L43-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-27 17:57:31,189 INFO L290 TraceCheckUtils]: 13: Hoare triple {34#false} [101] L43-2-->L38-1: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-27 17:57:31,189 INFO L272 TraceCheckUtils]: 14: Hoare triple {34#false} [107] L38-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= (mod (+ v_main_~r~0_11 (* v_main_~q~0_10 v_main_~b~0_14)) 4294967296) (mod v_main_~A~0_10 4294967296)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_10, main_~A~0=v_main_~A~0_10, 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] {34#false} is VALID [2022-04-27 17:57:31,189 INFO L290 TraceCheckUtils]: 15: Hoare triple {34#false} [110] __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] {34#false} is VALID [2022-04-27 17:57:31,189 INFO L290 TraceCheckUtils]: 16: Hoare triple {34#false} [114] 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[] {34#false} is VALID [2022-04-27 17:57:31,189 INFO L290 TraceCheckUtils]: 17: Hoare triple {34#false} [118] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-27 17:57:31,190 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 17:57:31,190 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:57:31,190 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [953120171] [2022-04-27 17:57:31,191 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [953120171] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 17:57:31,191 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 17:57:31,191 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 17:57:31,192 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [96794567] [2022-04-27 17:57:31,193 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 17:57:31,196 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-27 17:57:31,197 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:57:31,199 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 17:57:31,227 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:57:31,227 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 17:57:31,228 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:57:31,241 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 17:57:31,241 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 17:57:31,243 INFO L87 Difference]: Start difference. First operand has 30 states, 19 states have (on average 1.5263157894736843) internal successors, (29), 20 states have internal predecessors, (29), 5 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 17:57:31,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:57:31,343 INFO L93 Difference]: Finished difference Result 30 states and 33 transitions. [2022-04-27 17:57:31,343 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 17:57:31,343 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-27 17:57:31,343 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:57:31,344 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 17:57:31,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 39 transitions. [2022-04-27 17:57:31,356 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 17:57:31,358 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 39 transitions. [2022-04-27 17:57:31,358 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 39 transitions. [2022-04-27 17:57:31,402 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:57:31,407 INFO L225 Difference]: With dead ends: 30 [2022-04-27 17:57:31,408 INFO L226 Difference]: Without dead ends: 25 [2022-04-27 17:57:31,409 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 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-27 17:57:31,411 INFO L413 NwaCegarLoop]: 30 mSDtfsCounter, 20 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 5 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 33 SdHoareTripleChecker+Invalid, 9 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 5 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 17:57:31,412 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [23 Valid, 33 Invalid, 9 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 5 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 17:57:31,423 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25 states. [2022-04-27 17:57:31,431 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25 to 25. [2022-04-27 17:57:31,431 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:57:31,432 INFO L82 GeneralOperation]: Start isEquivalent. First operand 25 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 17:57:31,432 INFO L74 IsIncluded]: Start isIncluded. First operand 25 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 17:57:31,433 INFO L87 Difference]: Start difference. First operand 25 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 17:57:31,435 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:57:31,436 INFO L93 Difference]: Finished difference Result 25 states and 28 transitions. [2022-04-27 17:57:31,436 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 28 transitions. [2022-04-27 17:57:31,436 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:57:31,436 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:57:31,437 INFO L74 IsIncluded]: Start isIncluded. First operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 25 states. [2022-04-27 17:57:31,437 INFO L87 Difference]: Start difference. First operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 25 states. [2022-04-27 17:57:31,439 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:57:31,439 INFO L93 Difference]: Finished difference Result 25 states and 28 transitions. [2022-04-27 17:57:31,439 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 28 transitions. [2022-04-27 17:57:31,440 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:57:31,440 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:57:31,440 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:57:31,440 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:57:31,440 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 17:57:31,441 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 28 transitions. [2022-04-27 17:57:31,442 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 28 transitions. Word has length 18 [2022-04-27 17:57:31,442 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:57:31,443 INFO L495 AbstractCegarLoop]: Abstraction has 25 states and 28 transitions. [2022-04-27 17:57:31,443 INFO L496 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 17:57:31,443 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 28 transitions. [2022-04-27 17:57:31,443 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-04-27 17:57:31,443 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:57:31,444 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 17:57:31,444 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 17:57:31,444 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:57:31,444 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:57:31,445 INFO L85 PathProgramCache]: Analyzing trace with hash -2138426952, now seen corresponding path program 1 times [2022-04-27 17:57:31,445 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:57:31,445 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1889744146] [2022-04-27 17:57:31,445 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:57:31,445 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:57:31,457 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:57:31,458 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [641723590] [2022-04-27 17:57:31,458 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:57:31,458 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:57:31,458 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:57:31,460 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-27 17:57:31,460 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-27 17:57:31,515 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:57:31,517 INFO L263 TraceCheckSpWp]: Trace formula consists of 66 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-27 17:57:31,539 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:57:31,542 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:57:31,870 INFO L272 TraceCheckUtils]: 0: Hoare triple {150#true} [87] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {150#true} is VALID [2022-04-27 17:57:31,871 INFO L290 TraceCheckUtils]: 1: Hoare triple {150#true} [89] 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) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#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[#NULL.offset, #NULL.base] {150#true} is VALID [2022-04-27 17:57:31,871 INFO L290 TraceCheckUtils]: 2: Hoare triple {150#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {150#true} is VALID [2022-04-27 17:57:31,871 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {150#true} {150#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {150#true} is VALID [2022-04-27 17:57:31,871 INFO L272 TraceCheckUtils]: 4: Hoare triple {150#true} [88] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {150#true} is VALID [2022-04-27 17:57:31,872 INFO L290 TraceCheckUtils]: 5: Hoare triple {150#true} [91] mainENTRY-->L29: Formula: (= v_main_~A~0_2 |v_main_#t~nondet1_2|) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_2, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {150#true} is VALID [2022-04-27 17:57:31,872 INFO L272 TraceCheckUtils]: 6: Hoare triple {150#true} [93] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 20) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {150#true} is VALID [2022-04-27 17:57:31,872 INFO L290 TraceCheckUtils]: 7: Hoare triple {150#true} [95] 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] {150#true} is VALID [2022-04-27 17:57:31,872 INFO L290 TraceCheckUtils]: 8: Hoare triple {150#true} [100] 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[] {150#true} is VALID [2022-04-27 17:57:31,872 INFO L290 TraceCheckUtils]: 9: Hoare triple {150#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {150#true} is VALID [2022-04-27 17:57:31,872 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {150#true} {150#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 20) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {150#true} is VALID [2022-04-27 17:57:31,886 INFO L290 TraceCheckUtils]: 11: Hoare triple {150#true} [94] L29-1-->L34-2: Formula: (and (= v_main_~B~0_4 v_main_~b~0_6) (= v_main_~q~0_5 0) (= v_main_~B~0_4 1) (= v_main_~A~0_6 v_main_~r~0_3)) InVars {main_~A~0=v_main_~A~0_6} OutVars{main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_4, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_6, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_~B~0, main_~b~0, main_~r~0] {188#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 17:57:31,888 INFO L290 TraceCheckUtils]: 12: Hoare triple {188#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 17:57:31,889 INFO L290 TraceCheckUtils]: 13: Hoare triple {188#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (= main_~q~0 0))} [104] L35-->L43-2: Formula: (not (<= (mod v_main_~b~0_10 4294967296) (mod v_main_~r~0_8 4294967296))) InVars {main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {195#(and (= main_~b~0 1) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= main_~A~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 17:57:31,889 INFO L290 TraceCheckUtils]: 14: Hoare triple {195#(and (= main_~b~0 1) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= main_~A~0 main_~r~0) (= main_~q~0 0))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {195#(and (= main_~b~0 1) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= main_~A~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 17:57:31,890 INFO L272 TraceCheckUtils]: 15: Hoare triple {195#(and (= main_~b~0 1) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (= main_~A~0 main_~r~0) (= main_~q~0 0))} [108] L39-->__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_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, 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] {202#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:57:31,891 INFO L290 TraceCheckUtils]: 16: Hoare triple {202#(<= 1 |__VERIFIER_assert_#in~cond|)} [110] __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] {206#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:57:31,892 INFO L290 TraceCheckUtils]: 17: Hoare triple {206#(<= 1 __VERIFIER_assert_~cond)} [114] 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[] {151#false} is VALID [2022-04-27 17:57:31,892 INFO L290 TraceCheckUtils]: 18: Hoare triple {151#false} [118] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151#false} is VALID [2022-04-27 17:57:31,892 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 17:57:31,893 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 17:57:31,893 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:57:31,893 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1889744146] [2022-04-27 17:57:31,893 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:57:31,893 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [641723590] [2022-04-27 17:57:31,893 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [641723590] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 17:57:31,893 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 17:57:31,894 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 17:57:31,894 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [626651662] [2022-04-27 17:57:31,894 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 17:57:31,895 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-04-27 17:57:31,895 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:57:31,895 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 17:57:31,910 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:57:31,911 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 17:57:31,911 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:57:31,911 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 17:57:31,911 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-04-27 17:57:31,912 INFO L87 Difference]: Start difference. First operand 25 states and 28 transitions. Second operand has 6 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 17:57:32,081 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:57:32,081 INFO L93 Difference]: Finished difference Result 35 states and 40 transitions. [2022-04-27 17:57:32,081 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 17:57:32,082 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-04-27 17:57:32,082 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:57:32,082 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 17:57:32,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 41 transitions. [2022-04-27 17:57:32,084 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 17:57:32,085 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 41 transitions. [2022-04-27 17:57:32,085 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 41 transitions. [2022-04-27 17:57:32,124 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:57:32,125 INFO L225 Difference]: With dead ends: 35 [2022-04-27 17:57:32,125 INFO L226 Difference]: Without dead ends: 34 [2022-04-27 17:57:32,125 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=14, Invalid=28, Unknown=0, NotChecked=0, Total=42 [2022-04-27 17:57:32,126 INFO L413 NwaCegarLoop]: 22 mSDtfsCounter, 8 mSDsluCounter, 70 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 92 SdHoareTripleChecker+Invalid, 51 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 17:57:32,126 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [9 Valid, 92 Invalid, 51 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 17:57:32,127 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-27 17:57:32,129 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-27 17:57:32,129 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:57:32,129 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 34 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 24 states have internal predecessors, (28), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 17:57:32,130 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 34 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 24 states have internal predecessors, (28), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 17:57:32,130 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 34 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 24 states have internal predecessors, (28), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 17:57:32,132 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:57:32,132 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2022-04-27 17:57:32,132 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-04-27 17:57:32,132 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:57:32,132 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:57:32,132 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 24 states have internal predecessors, (28), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 34 states. [2022-04-27 17:57:32,133 INFO L87 Difference]: Start difference. First operand has 34 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 24 states have internal predecessors, (28), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 34 states. [2022-04-27 17:57:32,134 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:57:32,134 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2022-04-27 17:57:32,134 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-04-27 17:57:32,135 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:57:32,135 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:57:32,135 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:57:32,135 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:57:32,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 24 states have internal predecessors, (28), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 17:57:32,137 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 38 transitions. [2022-04-27 17:57:32,137 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 38 transitions. Word has length 19 [2022-04-27 17:57:32,137 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:57:32,137 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 38 transitions. [2022-04-27 17:57:32,137 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.1666666666666665) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 17:57:32,137 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-04-27 17:57:32,138 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-04-27 17:57:32,138 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:57:32,138 INFO L195 NwaCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 17:57:32,155 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-27 17:57:32,354 WARN L477 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-27 17:57:32,355 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:57:32,355 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:57:32,355 INFO L85 PathProgramCache]: Analyzing trace with hash -554838191, now seen corresponding path program 1 times [2022-04-27 17:57:32,355 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:57:32,356 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1905279296] [2022-04-27 17:57:32,356 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:57:32,356 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:57:32,369 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:57:32,369 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1300427594] [2022-04-27 17:57:32,370 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:57:32,370 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:57:32,370 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:57:32,371 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-27 17:57:32,381 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-27 17:57:32,407 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:57:32,409 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-27 17:57:32,416 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:57:32,416 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:57:32,674 INFO L272 TraceCheckUtils]: 0: Hoare triple {351#true} [87] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-27 17:57:32,675 INFO L290 TraceCheckUtils]: 1: Hoare triple {351#true} [89] 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) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#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[#NULL.offset, #NULL.base] {351#true} is VALID [2022-04-27 17:57:32,675 INFO L290 TraceCheckUtils]: 2: Hoare triple {351#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-27 17:57:32,675 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {351#true} {351#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-27 17:57:32,675 INFO L272 TraceCheckUtils]: 4: Hoare triple {351#true} [88] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-27 17:57:32,676 INFO L290 TraceCheckUtils]: 5: Hoare triple {351#true} [91] mainENTRY-->L29: Formula: (= v_main_~A~0_2 |v_main_#t~nondet1_2|) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_2, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {351#true} is VALID [2022-04-27 17:57:32,676 INFO L272 TraceCheckUtils]: 6: Hoare triple {351#true} [93] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 20) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {351#true} is VALID [2022-04-27 17:57:32,680 INFO L290 TraceCheckUtils]: 7: Hoare triple {351#true} [95] 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] {377#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 17:57:32,681 INFO L290 TraceCheckUtils]: 8: Hoare triple {377#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [100] 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[] {381#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 17:57:32,681 INFO L290 TraceCheckUtils]: 9: Hoare triple {381#(not (= |assume_abort_if_not_#in~cond| 0))} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {381#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 17:57:32,682 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {381#(not (= |assume_abort_if_not_#in~cond| 0))} {351#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 20) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {388#(<= (mod main_~A~0 4294967296) 20)} is VALID [2022-04-27 17:57:32,682 INFO L290 TraceCheckUtils]: 11: Hoare triple {388#(<= (mod main_~A~0 4294967296) 20)} [94] L29-1-->L34-2: Formula: (and (= v_main_~B~0_4 v_main_~b~0_6) (= v_main_~q~0_5 0) (= v_main_~B~0_4 1) (= v_main_~A~0_6 v_main_~r~0_3)) InVars {main_~A~0=v_main_~A~0_6} OutVars{main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_4, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_6, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_~B~0, main_~b~0, main_~r~0] {392#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (= main_~q~0 0))} is VALID [2022-04-27 17:57:32,684 INFO L290 TraceCheckUtils]: 12: Hoare triple {392#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {392#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (= main_~q~0 0))} is VALID [2022-04-27 17:57:32,685 INFO L290 TraceCheckUtils]: 13: Hoare triple {392#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (= main_~q~0 0))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) 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_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {392#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (= main_~q~0 0))} is VALID [2022-04-27 17:57:32,685 INFO L290 TraceCheckUtils]: 14: Hoare triple {392#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {392#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (= main_~q~0 0))} is VALID [2022-04-27 17:57:32,686 INFO L290 TraceCheckUtils]: 15: Hoare triple {392#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (= main_~q~0 0))} [104] L35-->L43-2: Formula: (not (<= (mod v_main_~b~0_10 4294967296) (mod v_main_~r~0_8 4294967296))) InVars {main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {392#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (= main_~q~0 0))} is VALID [2022-04-27 17:57:32,686 INFO L290 TraceCheckUtils]: 16: Hoare triple {392#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (= main_~q~0 0))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {392#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (= main_~q~0 0))} is VALID [2022-04-27 17:57:32,687 INFO L272 TraceCheckUtils]: 17: Hoare triple {392#(and (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (= main_~q~0 0))} [108] L39-->__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_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, 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] {411#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:57:32,688 INFO L290 TraceCheckUtils]: 18: Hoare triple {411#(<= 1 |__VERIFIER_assert_#in~cond|)} [110] __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] {415#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:57:32,688 INFO L290 TraceCheckUtils]: 19: Hoare triple {415#(<= 1 __VERIFIER_assert_~cond)} [114] 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[] {352#false} is VALID [2022-04-27 17:57:32,688 INFO L290 TraceCheckUtils]: 20: Hoare triple {352#false} [118] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {352#false} is VALID [2022-04-27 17:57:32,689 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 17:57:32,689 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 17:57:32,689 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:57:32,689 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1905279296] [2022-04-27 17:57:32,689 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:57:32,689 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1300427594] [2022-04-27 17:57:32,689 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1300427594] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 17:57:32,689 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 17:57:32,689 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-27 17:57:32,690 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1215066532] [2022-04-27 17:57:32,690 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 17:57:32,690 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 21 [2022-04-27 17:57:32,690 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:57:32,690 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 17:57:32,706 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-27 17:57:32,707 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-27 17:57:32,707 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:57:32,707 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-27 17:57:32,707 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2022-04-27 17:57:32,708 INFO L87 Difference]: Start difference. First operand 34 states and 38 transitions. Second operand has 8 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 17:57:32,944 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:57:32,944 INFO L93 Difference]: Finished difference Result 43 states and 49 transitions. [2022-04-27 17:57:32,944 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 17:57:32,945 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 21 [2022-04-27 17:57:32,945 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:57:32,945 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 17:57:32,947 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 40 transitions. [2022-04-27 17:57:32,947 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 17:57:32,948 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 40 transitions. [2022-04-27 17:57:32,948 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 40 transitions. [2022-04-27 17:57:32,981 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:57:32,982 INFO L225 Difference]: With dead ends: 43 [2022-04-27 17:57:32,982 INFO L226 Difference]: Without dead ends: 42 [2022-04-27 17:57:32,982 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-27 17:57:32,983 INFO L413 NwaCegarLoop]: 18 mSDtfsCounter, 19 mSDsluCounter, 80 mSDsCounter, 0 mSdLazyCounter, 83 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 98 SdHoareTripleChecker+Invalid, 86 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 83 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 17:57:32,983 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [21 Valid, 98 Invalid, 86 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 83 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 17:57:32,984 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2022-04-27 17:57:32,986 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 33. [2022-04-27 17:57:32,986 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:57:32,986 INFO L82 GeneralOperation]: Start isEquivalent. First operand 42 states. Second operand has 33 states, 22 states have (on average 1.2272727272727273) internal successors, (27), 23 states have internal predecessors, (27), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 17:57:32,986 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand has 33 states, 22 states have (on average 1.2272727272727273) internal successors, (27), 23 states have internal predecessors, (27), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 17:57:32,987 INFO L87 Difference]: Start difference. First operand 42 states. Second operand has 33 states, 22 states have (on average 1.2272727272727273) internal successors, (27), 23 states have internal predecessors, (27), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 17:57:32,988 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:57:32,988 INFO L93 Difference]: Finished difference Result 42 states and 47 transitions. [2022-04-27 17:57:32,988 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 47 transitions. [2022-04-27 17:57:32,989 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:57:32,989 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:57:32,989 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 22 states have (on average 1.2272727272727273) internal successors, (27), 23 states have internal predecessors, (27), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 42 states. [2022-04-27 17:57:32,989 INFO L87 Difference]: Start difference. First operand has 33 states, 22 states have (on average 1.2272727272727273) internal successors, (27), 23 states have internal predecessors, (27), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 42 states. [2022-04-27 17:57:32,991 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:57:32,991 INFO L93 Difference]: Finished difference Result 42 states and 47 transitions. [2022-04-27 17:57:32,991 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 47 transitions. [2022-04-27 17:57:32,991 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:57:32,991 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:57:32,992 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:57:32,992 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:57:32,992 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 22 states have (on average 1.2272727272727273) internal successors, (27), 23 states have internal predecessors, (27), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 17:57:32,993 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 37 transitions. [2022-04-27 17:57:32,993 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 37 transitions. Word has length 21 [2022-04-27 17:57:32,993 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:57:32,993 INFO L495 AbstractCegarLoop]: Abstraction has 33 states and 37 transitions. [2022-04-27 17:57:32,993 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 1.75) internal successors, (14), 6 states have internal predecessors, (14), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 17:57:32,993 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 37 transitions. [2022-04-27 17:57:32,994 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-27 17:57:32,994 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:57:32,994 INFO L195 NwaCegarLoop]: 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, 1] [2022-04-27 17:57:33,013 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-27 17:57:33,211 WARN L477 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-27 17:57:33,211 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:57:33,211 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:57:33,212 INFO L85 PathProgramCache]: Analyzing trace with hash 1600606598, now seen corresponding path program 1 times [2022-04-27 17:57:33,212 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:57:33,212 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1167451859] [2022-04-27 17:57:33,212 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:57:33,212 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:57:33,224 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:57:33,224 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1225817369] [2022-04-27 17:57:33,224 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:57:33,224 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:57:33,225 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:57:33,225 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-27 17:57:33,226 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-27 17:57:33,256 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:57:33,257 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 17:57:33,272 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:57:33,273 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:57:33,337 INFO L272 TraceCheckUtils]: 0: Hoare triple {585#true} [87] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {585#true} is VALID [2022-04-27 17:57:33,337 INFO L290 TraceCheckUtils]: 1: Hoare triple {585#true} [89] 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) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#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[#NULL.offset, #NULL.base] {585#true} is VALID [2022-04-27 17:57:33,337 INFO L290 TraceCheckUtils]: 2: Hoare triple {585#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {585#true} is VALID [2022-04-27 17:57:33,338 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {585#true} {585#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {585#true} is VALID [2022-04-27 17:57:33,338 INFO L272 TraceCheckUtils]: 4: Hoare triple {585#true} [88] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {585#true} is VALID [2022-04-27 17:57:33,338 INFO L290 TraceCheckUtils]: 5: Hoare triple {585#true} [91] mainENTRY-->L29: Formula: (= v_main_~A~0_2 |v_main_#t~nondet1_2|) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_2, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {585#true} is VALID [2022-04-27 17:57:33,338 INFO L272 TraceCheckUtils]: 6: Hoare triple {585#true} [93] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 20) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {585#true} is VALID [2022-04-27 17:57:33,338 INFO L290 TraceCheckUtils]: 7: Hoare triple {585#true} [95] 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] {585#true} is VALID [2022-04-27 17:57:33,338 INFO L290 TraceCheckUtils]: 8: Hoare triple {585#true} [100] 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[] {585#true} is VALID [2022-04-27 17:57:33,338 INFO L290 TraceCheckUtils]: 9: Hoare triple {585#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {585#true} is VALID [2022-04-27 17:57:33,338 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {585#true} {585#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 20) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {585#true} is VALID [2022-04-27 17:57:33,341 INFO L290 TraceCheckUtils]: 11: Hoare triple {585#true} [94] L29-1-->L34-2: Formula: (and (= v_main_~B~0_4 v_main_~b~0_6) (= v_main_~q~0_5 0) (= v_main_~B~0_4 1) (= v_main_~A~0_6 v_main_~r~0_3)) InVars {main_~A~0=v_main_~A~0_6} OutVars{main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_4, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_6, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_~B~0, main_~b~0, main_~r~0] {623#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} is VALID [2022-04-27 17:57:33,342 INFO L290 TraceCheckUtils]: 12: Hoare triple {623#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {623#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} is VALID [2022-04-27 17:57:33,343 INFO L290 TraceCheckUtils]: 13: Hoare triple {623#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} [104] L35-->L43-2: Formula: (not (<= (mod v_main_~b~0_10 4294967296) (mod v_main_~r~0_8 4294967296))) InVars {main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {623#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} is VALID [2022-04-27 17:57:33,343 INFO L290 TraceCheckUtils]: 14: Hoare triple {623#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {623#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} is VALID [2022-04-27 17:57:33,344 INFO L272 TraceCheckUtils]: 15: Hoare triple {623#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} [108] L39-->__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_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, 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] {585#true} is VALID [2022-04-27 17:57:33,344 INFO L290 TraceCheckUtils]: 16: Hoare triple {585#true} [110] __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] {585#true} is VALID [2022-04-27 17:57:33,344 INFO L290 TraceCheckUtils]: 17: Hoare triple {585#true} [115] 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[] {585#true} is VALID [2022-04-27 17:57:33,344 INFO L290 TraceCheckUtils]: 18: Hoare triple {585#true} [120] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {585#true} is VALID [2022-04-27 17:57:33,345 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {585#true} {623#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} [124] __VERIFIER_assertEXIT-->L39-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_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, 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] {623#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} is VALID [2022-04-27 17:57:33,346 INFO L290 TraceCheckUtils]: 20: Hoare triple {623#(and (= main_~B~0 main_~b~0) (= main_~B~0 1))} [112] L39-1-->L43: Formula: (let ((.cse0 (mod v_main_~b~0_5 4294967296))) (and (not (= (mod v_main_~B~0_3 4294967296) .cse0)) (= v_main_~b~0_4 (div .cse0 2)) (= v_main_~q~0_3 (* v_main_~q~0_4 2)))) InVars {main_~q~0=v_main_~q~0_4, main_~B~0=v_main_~B~0_3, main_~b~0=v_main_~b~0_5} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_3, main_~b~0=v_main_~b~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0] {586#false} is VALID [2022-04-27 17:57:33,346 INFO L290 TraceCheckUtils]: 21: Hoare triple {586#false} [116] L43-->L43-2: Formula: (and (= (+ v_main_~q~0_7 1) v_main_~q~0_6) (= v_main_~r~0_4 (+ (* (- 1) v_main_~b~0_7) v_main_~r~0_5)) (<= (mod v_main_~b~0_7 4294967296) (mod v_main_~r~0_5 4294967296))) InVars {main_~q~0=v_main_~q~0_7, main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_5} OutVars{main_~q~0=v_main_~q~0_6, main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~r~0] {586#false} is VALID [2022-04-27 17:57:33,346 INFO L290 TraceCheckUtils]: 22: Hoare triple {586#false} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {586#false} is VALID [2022-04-27 17:57:33,346 INFO L272 TraceCheckUtils]: 23: Hoare triple {586#false} [108] L39-->__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_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, 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] {586#false} is VALID [2022-04-27 17:57:33,346 INFO L290 TraceCheckUtils]: 24: Hoare triple {586#false} [110] __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] {586#false} is VALID [2022-04-27 17:57:33,346 INFO L290 TraceCheckUtils]: 25: Hoare triple {586#false} [114] 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[] {586#false} is VALID [2022-04-27 17:57:33,347 INFO L290 TraceCheckUtils]: 26: Hoare triple {586#false} [118] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {586#false} is VALID [2022-04-27 17:57:33,347 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 17:57:33,347 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 17:57:33,347 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:57:33,347 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1167451859] [2022-04-27 17:57:33,347 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:57:33,347 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1225817369] [2022-04-27 17:57:33,347 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1225817369] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 17:57:33,347 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 17:57:33,347 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 17:57:33,348 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [538806083] [2022-04-27 17:57:33,348 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 17:57:33,348 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 27 [2022-04-27 17:57:33,348 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:57:33,348 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 17:57:33,364 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:57:33,365 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 17:57:33,365 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:57:33,365 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 17:57:33,365 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 17:57:33,365 INFO L87 Difference]: Start difference. First operand 33 states and 37 transitions. Second operand has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 17:57:33,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:57:33,401 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-27 17:57:33,401 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 17:57:33,402 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 27 [2022-04-27 17:57:33,402 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:57:33,402 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 17:57:33,403 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 35 transitions. [2022-04-27 17:57:33,403 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 17:57:33,404 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 35 transitions. [2022-04-27 17:57:33,404 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 35 transitions. [2022-04-27 17:57:33,442 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-27 17:57:33,443 INFO L225 Difference]: With dead ends: 38 [2022-04-27 17:57:33,443 INFO L226 Difference]: Without dead ends: 35 [2022-04-27 17:57:33,443 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 25 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-27 17:57:33,444 INFO L413 NwaCegarLoop]: 27 mSDtfsCounter, 0 mSDsluCounter, 18 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 11 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 17:57:33,444 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 45 Invalid, 11 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 17:57:33,444 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-27 17:57:33,446 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-27 17:57:33,446 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:57:33,446 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 35 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 17:57:33,446 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 35 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 17:57:33,447 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 35 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 17:57:33,448 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:57:33,448 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-27 17:57:33,448 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-27 17:57:33,448 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:57:33,448 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:57:33,448 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 35 states. [2022-04-27 17:57:33,449 INFO L87 Difference]: Start difference. First operand has 35 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 35 states. [2022-04-27 17:57:33,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:57:33,450 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-27 17:57:33,450 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-27 17:57:33,450 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:57:33,450 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:57:33,450 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:57:33,450 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:57:33,450 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 17:57:33,451 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 39 transitions. [2022-04-27 17:57:33,451 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 39 transitions. Word has length 27 [2022-04-27 17:57:33,451 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:57:33,452 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 39 transitions. [2022-04-27 17:57:33,452 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 6.333333333333333) internal successors, (19), 3 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 17:57:33,452 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-27 17:57:33,452 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-27 17:57:33,452 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:57:33,452 INFO L195 NwaCegarLoop]: 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, 1] [2022-04-27 17:57:33,471 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-27 17:57:33,659 WARN L477 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-27 17:57:33,660 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:57:33,660 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:57:33,660 INFO L85 PathProgramCache]: Analyzing trace with hash 1664896543, now seen corresponding path program 1 times [2022-04-27 17:57:33,661 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:57:33,661 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [308646058] [2022-04-27 17:57:33,661 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:57:33,661 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:57:33,671 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:57:33,671 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [767072863] [2022-04-27 17:57:33,671 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:57:33,672 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:57:33,672 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:57:33,672 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-27 17:57:33,674 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-27 17:57:33,739 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:57:33,740 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-27 17:57:33,750 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:57:33,751 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:57:34,452 INFO L272 TraceCheckUtils]: 0: Hoare triple {811#true} [87] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {811#true} is VALID [2022-04-27 17:57:34,452 INFO L290 TraceCheckUtils]: 1: Hoare triple {811#true} [89] 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) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#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[#NULL.offset, #NULL.base] {811#true} is VALID [2022-04-27 17:57:34,452 INFO L290 TraceCheckUtils]: 2: Hoare triple {811#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {811#true} is VALID [2022-04-27 17:57:34,452 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {811#true} {811#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {811#true} is VALID [2022-04-27 17:57:34,453 INFO L272 TraceCheckUtils]: 4: Hoare triple {811#true} [88] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {811#true} is VALID [2022-04-27 17:57:34,453 INFO L290 TraceCheckUtils]: 5: Hoare triple {811#true} [91] mainENTRY-->L29: Formula: (= v_main_~A~0_2 |v_main_#t~nondet1_2|) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_2, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {811#true} is VALID [2022-04-27 17:57:34,453 INFO L272 TraceCheckUtils]: 6: Hoare triple {811#true} [93] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 20) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {811#true} is VALID [2022-04-27 17:57:34,453 INFO L290 TraceCheckUtils]: 7: Hoare triple {811#true} [95] 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] {837#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 17:57:34,454 INFO L290 TraceCheckUtils]: 8: Hoare triple {837#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [100] 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[] {841#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 17:57:34,454 INFO L290 TraceCheckUtils]: 9: Hoare triple {841#(not (= |assume_abort_if_not_#in~cond| 0))} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {841#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 17:57:34,455 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {841#(not (= |assume_abort_if_not_#in~cond| 0))} {811#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 20) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {848#(<= (mod main_~A~0 4294967296) 20)} is VALID [2022-04-27 17:57:34,455 INFO L290 TraceCheckUtils]: 11: Hoare triple {848#(<= (mod main_~A~0 4294967296) 20)} [94] L29-1-->L34-2: Formula: (and (= v_main_~B~0_4 v_main_~b~0_6) (= v_main_~q~0_5 0) (= v_main_~B~0_4 1) (= v_main_~A~0_6 v_main_~r~0_3)) InVars {main_~A~0=v_main_~A~0_6} OutVars{main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_4, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_6, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_~B~0, main_~b~0, main_~r~0] {852#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (= main_~q~0 0))} is VALID [2022-04-27 17:57:34,456 INFO L290 TraceCheckUtils]: 12: Hoare triple {852#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {852#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (= main_~q~0 0))} is VALID [2022-04-27 17:57:34,456 INFO L290 TraceCheckUtils]: 13: Hoare triple {852#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (= main_~q~0 0))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) 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_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {859#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-27 17:57:34,457 INFO L290 TraceCheckUtils]: 14: Hoare triple {859#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {859#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-27 17:57:34,457 INFO L290 TraceCheckUtils]: 15: Hoare triple {859#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (<= (mod main_~A~0 4294967296) 20) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} [104] L35-->L43-2: Formula: (not (<= (mod v_main_~b~0_10 4294967296) (mod v_main_~r~0_8 4294967296))) InVars {main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {866#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-27 17:57:34,458 INFO L290 TraceCheckUtils]: 16: Hoare triple {866#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {866#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-27 17:57:34,458 INFO L272 TraceCheckUtils]: 17: Hoare triple {866#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} [108] L39-->__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_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, 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] {811#true} is VALID [2022-04-27 17:57:34,458 INFO L290 TraceCheckUtils]: 18: Hoare triple {811#true} [110] __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] {811#true} is VALID [2022-04-27 17:57:34,458 INFO L290 TraceCheckUtils]: 19: Hoare triple {811#true} [115] 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[] {811#true} is VALID [2022-04-27 17:57:34,458 INFO L290 TraceCheckUtils]: 20: Hoare triple {811#true} [120] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {811#true} is VALID [2022-04-27 17:57:34,459 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {811#true} {866#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} [124] __VERIFIER_assertEXIT-->L39-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_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, 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] {866#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} is VALID [2022-04-27 17:57:34,460 INFO L290 TraceCheckUtils]: 22: Hoare triple {866#(and (= main_~b~0 2) (= main_~A~0 main_~r~0) (< (mod main_~r~0 4294967296) (mod main_~b~0 4294967296)) (<= 1 (mod main_~r~0 4294967296)) (= main_~q~0 0))} [112] L39-1-->L43: Formula: (let ((.cse0 (mod v_main_~b~0_5 4294967296))) (and (not (= (mod v_main_~B~0_3 4294967296) .cse0)) (= v_main_~b~0_4 (div .cse0 2)) (= v_main_~q~0_3 (* v_main_~q~0_4 2)))) InVars {main_~q~0=v_main_~q~0_4, main_~B~0=v_main_~B~0_3, main_~b~0=v_main_~b~0_5} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_3, main_~b~0=v_main_~b~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0] {888#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (< (mod main_~r~0 4294967296) 2) (= main_~q~0 0))} is VALID [2022-04-27 17:57:34,460 INFO L290 TraceCheckUtils]: 23: Hoare triple {888#(and (= main_~b~0 1) (= main_~A~0 main_~r~0) (<= 1 (mod main_~r~0 4294967296)) (< (mod main_~r~0 4294967296) 2) (= main_~q~0 0))} [116] L43-->L43-2: Formula: (and (= (+ v_main_~q~0_7 1) v_main_~q~0_6) (= v_main_~r~0_4 (+ (* (- 1) v_main_~b~0_7) v_main_~r~0_5)) (<= (mod v_main_~b~0_7 4294967296) (mod v_main_~r~0_5 4294967296))) InVars {main_~q~0=v_main_~q~0_7, main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_5} OutVars{main_~q~0=v_main_~q~0_6, main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~r~0] {892#(and (= (+ main_~A~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~b~0 1) (= (+ (- 1) main_~q~0) 0) (< (mod main_~A~0 4294967296) 2) (<= 1 (mod main_~A~0 4294967296)))} is VALID [2022-04-27 17:57:34,461 INFO L290 TraceCheckUtils]: 24: Hoare triple {892#(and (= (+ main_~A~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~b~0 1) (= (+ (- 1) main_~q~0) 0) (< (mod main_~A~0 4294967296) 2) (<= 1 (mod main_~A~0 4294967296)))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {892#(and (= (+ main_~A~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~b~0 1) (= (+ (- 1) main_~q~0) 0) (< (mod main_~A~0 4294967296) 2) (<= 1 (mod main_~A~0 4294967296)))} is VALID [2022-04-27 17:57:34,462 INFO L272 TraceCheckUtils]: 25: Hoare triple {892#(and (= (+ main_~A~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~b~0 1) (= (+ (- 1) main_~q~0) 0) (< (mod main_~A~0 4294967296) 2) (<= 1 (mod main_~A~0 4294967296)))} [108] L39-->__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_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, 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] {899#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:57:34,463 INFO L290 TraceCheckUtils]: 26: Hoare triple {899#(<= 1 |__VERIFIER_assert_#in~cond|)} [110] __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] {903#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:57:34,463 INFO L290 TraceCheckUtils]: 27: Hoare triple {903#(<= 1 __VERIFIER_assert_~cond)} [114] 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[] {812#false} is VALID [2022-04-27 17:57:34,463 INFO L290 TraceCheckUtils]: 28: Hoare triple {812#false} [118] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {812#false} is VALID [2022-04-27 17:57:34,464 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 17:57:34,464 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 17:57:49,367 WARN L855 $PredicateComparison]: unable to prove that (let ((.cse0 (mod c_main_~b~0 4294967296))) (or (= (mod c_main_~A~0 4294967296) (mod (+ (* (div .cse0 2) (* c_main_~q~0 2)) c_main_~r~0) 4294967296)) (<= .cse0 (mod c_main_~r~0 4294967296)))) is different from true [2022-04-27 17:58:23,456 WARN L232 SmtUtils]: Spent 10.63s on a formula simplification that was a NOOP. DAG size: 21 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-27 17:58:30,061 INFO L290 TraceCheckUtils]: 28: Hoare triple {812#false} [118] L20-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {812#false} is VALID [2022-04-27 17:58:30,061 INFO L290 TraceCheckUtils]: 27: Hoare triple {903#(<= 1 __VERIFIER_assert_~cond)} [114] 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[] {812#false} is VALID [2022-04-27 17:58:30,062 INFO L290 TraceCheckUtils]: 26: Hoare triple {899#(<= 1 |__VERIFIER_assert_#in~cond|)} [110] __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] {903#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:58:30,063 INFO L272 TraceCheckUtils]: 25: Hoare triple {919#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [108] L39-->__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_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, 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] {899#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:58:30,063 INFO L290 TraceCheckUtils]: 24: Hoare triple {919#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {919#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is VALID [2022-04-27 17:58:32,091 WARN L290 TraceCheckUtils]: 23: Hoare triple {919#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} [116] L43-->L43-2: Formula: (and (= (+ v_main_~q~0_7 1) v_main_~q~0_6) (= v_main_~r~0_4 (+ (* (- 1) v_main_~b~0_7) v_main_~r~0_5)) (<= (mod v_main_~b~0_7 4294967296) (mod v_main_~r~0_5 4294967296))) InVars {main_~q~0=v_main_~q~0_7, main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_5} OutVars{main_~q~0=v_main_~q~0_6, main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[main_~q~0, main_~r~0] {919#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is UNKNOWN [2022-04-27 17:58:34,101 WARN L290 TraceCheckUtils]: 22: Hoare triple {929#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296))} [112] L39-1-->L43: Formula: (let ((.cse0 (mod v_main_~b~0_5 4294967296))) (and (not (= (mod v_main_~B~0_3 4294967296) .cse0)) (= v_main_~b~0_4 (div .cse0 2)) (= v_main_~q~0_3 (* v_main_~q~0_4 2)))) InVars {main_~q~0=v_main_~q~0_4, main_~B~0=v_main_~B~0_3, main_~b~0=v_main_~b~0_5} OutVars{main_~q~0=v_main_~q~0_3, main_~B~0=v_main_~B~0_3, main_~b~0=v_main_~b~0_4} AuxVars[] AssignedVars[main_~q~0, main_~b~0] {919#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* main_~b~0 main_~q~0)) 4294967296))} is UNKNOWN [2022-04-27 17:58:34,103 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {811#true} {929#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296))} [124] __VERIFIER_assertEXIT-->L39-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_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, 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] {929#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296))} is VALID [2022-04-27 17:58:34,103 INFO L290 TraceCheckUtils]: 20: Hoare triple {811#true} [120] L19-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {811#true} is VALID [2022-04-27 17:58:34,103 INFO L290 TraceCheckUtils]: 19: Hoare triple {811#true} [115] 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[] {811#true} is VALID [2022-04-27 17:58:34,103 INFO L290 TraceCheckUtils]: 18: Hoare triple {811#true} [110] __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] {811#true} is VALID [2022-04-27 17:58:34,103 INFO L272 TraceCheckUtils]: 17: Hoare triple {929#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296))} [108] L39-->__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_9 4294967296)) 1 0)) InVars {main_~q~0=v_main_~q~0_9, main_~A~0=v_main_~A~0_9, 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] {811#true} is VALID [2022-04-27 17:58:34,103 INFO L290 TraceCheckUtils]: 16: Hoare triple {929#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296))} [103] L43-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {929#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296))} is VALID [2022-04-27 17:58:34,104 INFO L290 TraceCheckUtils]: 15: Hoare triple {951#(or (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296)) (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)))} [104] L35-->L43-2: Formula: (not (<= (mod v_main_~b~0_10 4294967296) (mod v_main_~r~0_8 4294967296))) InVars {main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {929#(= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296))} is VALID [2022-04-27 17:58:34,104 INFO L290 TraceCheckUtils]: 14: Hoare triple {951#(or (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296)) (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {951#(or (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296)) (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-27 17:58:36,242 WARN L290 TraceCheckUtils]: 13: Hoare triple {958#(or (= (mod main_~A~0 4294967296) (mod (+ (* (* main_~q~0 2) (div (mod (* main_~b~0 2) 4294967296) 2)) main_~r~0) 4294967296)) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (<= (mod (* main_~b~0 2) 4294967296) (mod main_~r~0 4294967296)))} [105] L35-->L34-2: Formula: (and (<= (mod v_main_~b~0_12 4294967296) (mod v_main_~r~0_9 4294967296)) (= (* 2 v_main_~b~0_12) v_main_~b~0_11)) 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_11, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[main_~b~0] {951#(or (= (mod main_~A~0 4294967296) (mod (+ main_~r~0 (* (div (mod main_~b~0 4294967296) 2) (* main_~q~0 2))) 4294967296)) (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296)))} is UNKNOWN [2022-04-27 17:58:36,246 INFO L290 TraceCheckUtils]: 12: Hoare triple {958#(or (= (mod main_~A~0 4294967296) (mod (+ (* (* main_~q~0 2) (div (mod (* main_~b~0 2) 4294967296) 2)) main_~r~0) 4294967296)) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (<= (mod (* main_~b~0 2) 4294967296) (mod main_~r~0 4294967296)))} [98] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {958#(or (= (mod main_~A~0 4294967296) (mod (+ (* (* main_~q~0 2) (div (mod (* main_~b~0 2) 4294967296) 2)) main_~r~0) 4294967296)) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (<= (mod (* main_~b~0 2) 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-27 17:58:36,246 INFO L290 TraceCheckUtils]: 11: Hoare triple {811#true} [94] L29-1-->L34-2: Formula: (and (= v_main_~B~0_4 v_main_~b~0_6) (= v_main_~q~0_5 0) (= v_main_~B~0_4 1) (= v_main_~A~0_6 v_main_~r~0_3)) InVars {main_~A~0=v_main_~A~0_6} OutVars{main_~q~0=v_main_~q~0_5, main_~B~0=v_main_~B~0_4, main_~b~0=v_main_~b~0_6, main_~A~0=v_main_~A~0_6, main_~r~0=v_main_~r~0_3} AuxVars[] AssignedVars[main_~q~0, main_~B~0, main_~b~0, main_~r~0] {958#(or (= (mod main_~A~0 4294967296) (mod (+ (* (* main_~q~0 2) (div (mod (* main_~b~0 2) 4294967296) 2)) main_~r~0) 4294967296)) (not (<= (mod main_~b~0 4294967296) (mod main_~r~0 4294967296))) (<= (mod (* main_~b~0 2) 4294967296) (mod main_~r~0 4294967296)))} is VALID [2022-04-27 17:58:36,246 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {811#true} {811#true} [122] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 20) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {811#true} is VALID [2022-04-27 17:58:36,247 INFO L290 TraceCheckUtils]: 9: Hoare triple {811#true} [106] L16-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {811#true} is VALID [2022-04-27 17:58:36,247 INFO L290 TraceCheckUtils]: 8: Hoare triple {811#true} [100] 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[] {811#true} is VALID [2022-04-27 17:58:36,247 INFO L290 TraceCheckUtils]: 7: Hoare triple {811#true} [95] 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] {811#true} is VALID [2022-04-27 17:58:36,247 INFO L272 TraceCheckUtils]: 6: Hoare triple {811#true} [93] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= (mod v_main_~A~0_8 4294967296) 20) 1 0)) InVars {main_~A~0=v_main_~A~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {811#true} is VALID [2022-04-27 17:58:36,247 INFO L290 TraceCheckUtils]: 5: Hoare triple {811#true} [91] mainENTRY-->L29: Formula: (= v_main_~A~0_2 |v_main_#t~nondet1_2|) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|} OutVars{main_~q~0=v_main_~q~0_2, main_~B~0=v_main_~B~0_2, main_~A~0=v_main_~A~0_2, main_~b~0=v_main_~b~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet1, main_~B~0, main_~A~0, main_~b~0, main_~r~0] {811#true} is VALID [2022-04-27 17:58:36,247 INFO L272 TraceCheckUtils]: 4: Hoare triple {811#true} [88] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {811#true} is VALID [2022-04-27 17:58:36,247 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {811#true} {811#true} [121] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {811#true} is VALID [2022-04-27 17:58:36,247 INFO L290 TraceCheckUtils]: 2: Hoare triple {811#true} [92] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {811#true} is VALID [2022-04-27 17:58:36,248 INFO L290 TraceCheckUtils]: 1: Hoare triple {811#true} [89] 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) 10) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#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[#NULL.offset, #NULL.base] {811#true} is VALID [2022-04-27 17:58:36,248 INFO L272 TraceCheckUtils]: 0: Hoare triple {811#true} [87] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {811#true} is VALID [2022-04-27 17:58:36,248 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 2 not checked. [2022-04-27 17:58:36,248 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:58:36,248 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [308646058] [2022-04-27 17:58:36,248 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:58:36,248 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [767072863] [2022-04-27 17:58:36,248 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [767072863] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 17:58:36,248 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 17:58:36,248 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 8] total 16 [2022-04-27 17:58:36,248 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2051136468] [2022-04-27 17:58:36,249 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 17:58:36,249 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.0625) internal successors, (33), 14 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 29 [2022-04-27 17:58:36,249 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:58:36,249 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 2.0625) internal successors, (33), 14 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 17:58:42,468 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 42 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-27 17:58:42,468 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-27 17:58:42,468 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:58:42,469 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-27 17:58:42,469 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=156, Unknown=8, NotChecked=26, Total=240 [2022-04-27 17:58:42,469 INFO L87 Difference]: Start difference. First operand 35 states and 39 transitions. Second operand has 16 states, 16 states have (on average 2.0625) internal successors, (33), 14 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 17:58:53,179 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-27 17:58:59,682 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-27 17:59:03,936 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-27 17:59:06,295 WARN L855 $PredicateComparison]: unable to prove that (let ((.cse5 (mod c_main_~r~0 4294967296)) (.cse2 (mod c_main_~A~0 4294967296)) (.cse6 (mod c_main_~b~0 4294967296)) (.cse4 (* c_main_~q~0 2))) (let ((.cse0 (= .cse2 (mod (+ (* (div .cse6 2) .cse4) c_main_~r~0) 4294967296))) (.cse1 (<= .cse6 .cse5))) (and (or .cse0 .cse1) (= .cse2 (mod (+ c_main_~r~0 (* c_main_~b~0 c_main_~q~0)) 4294967296)) .cse0 (<= .cse2 20) (let ((.cse3 (mod (* c_main_~b~0 2) 4294967296))) (or (not .cse1) (= .cse2 (mod (+ (* (div .cse3 2) .cse4) c_main_~r~0) 4294967296)) (<= .cse3 .cse5)))))) is different from true [2022-04-27 17:59:08,424 WARN L855 $PredicateComparison]: unable to prove that (let ((.cse1 (mod c_main_~b~0 4294967296)) (.cse5 (mod c_main_~r~0 4294967296))) (let ((.cse3 (<= .cse1 .cse5)) (.cse0 (mod c_main_~A~0 4294967296)) (.cse2 (* c_main_~q~0 2))) (and (or (= .cse0 (mod (+ (* (div .cse1 2) .cse2) c_main_~r~0) 4294967296)) .cse3) (let ((.cse4 (mod (* c_main_~b~0 2) 4294967296))) (or (not .cse3) (= .cse0 (mod (+ (* (div .cse4 2) .cse2) c_main_~r~0) 4294967296)) (<= .cse4 .cse5)))))) is different from true [2022-04-27 17:59:10,464 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-27 17:59:15,065 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-27 17:59:19,641 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-27 17:59:23,968 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-27 17:59:26,110 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.14s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 17:59:28,297 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [] [2022-04-27 17:59:32,598 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-27 17:59:34,743 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-27 17:59:36,884 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.14s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 17:59:38,994 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-27 17:59:41,229 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-27 17:59:43,649 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-27 18:00:01,619 WARN L232 SmtUtils]: Spent 14.90s on a formula simplification that was a NOOP. DAG size: 26 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-27 18:00:03,622 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-27 18:00:05,845 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-27 18:00:07,970 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-27 18:00:12,576 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-27 18:00:21,439 WARN L232 SmtUtils]: Spent 8.61s on a formula simplification that was a NOOP. DAG size: 24 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-27 18:00:32,562 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-27 18:00:34,711 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-27 18:00:39,252 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-27 18:00:41,498 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 18:00:50,053 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-27 18:00:52,226 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-27 18:00:54,360 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-27 18:00:57,379 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-27 18:00:59,498 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.12s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 18:00:59,704 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:00:59,704 INFO L93 Difference]: Finished difference Result 83 states and 104 transitions. [2022-04-27 18:00:59,704 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-27 18:00:59,704 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.0625) internal successors, (33), 14 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 29 [2022-04-27 18:00:59,704 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 18:00:59,705 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.0625) internal successors, (33), 14 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 18:00:59,707 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 90 transitions. [2022-04-27 18:00:59,708 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.0625) internal successors, (33), 14 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 18:00:59,710 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 90 transitions. [2022-04-27 18:00:59,710 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 90 transitions. [2022-04-27 18:01:05,927 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 88 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-27 18:01:05,929 INFO L225 Difference]: With dead ends: 83 [2022-04-27 18:01:05,929 INFO L226 Difference]: Without dead ends: 81 [2022-04-27 18:01:05,930 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 64 GetRequests, 41 SyntacticMatches, 3 SemanticMatches, 20 ConstructedPredicates, 3 IntricatePredicates, 0 DeprecatedPredicates, 77 ImplicationChecksByTransitivity, 60.0s TimeCoverageRelationStatistics Valid=80, Invalid=262, Unknown=12, NotChecked=108, Total=462 [2022-04-27 18:01:05,930 INFO L413 NwaCegarLoop]: 27 mSDtfsCounter, 31 mSDsluCounter, 157 mSDsCounter, 0 mSdLazyCounter, 197 mSolverCounterSat, 25 mSolverCounterUnsat, 28 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 58.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 184 SdHoareTripleChecker+Invalid, 317 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 197 IncrementalHoareTripleChecker+Invalid, 28 IncrementalHoareTripleChecker+Unknown, 67 IncrementalHoareTripleChecker+Unchecked, 60.9s IncrementalHoareTripleChecker+Time [2022-04-27 18:01:05,930 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [35 Valid, 184 Invalid, 317 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 197 Invalid, 28 Unknown, 67 Unchecked, 60.9s Time] [2022-04-27 18:01:05,931 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2022-04-27 18:01:05,935 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 62. [2022-04-27 18:01:05,935 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 18:01:05,936 INFO L82 GeneralOperation]: Start isEquivalent. First operand 81 states. Second operand has 62 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-27 18:01:05,936 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand has 62 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-27 18:01:05,936 INFO L87 Difference]: Start difference. First operand 81 states. Second operand has 62 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-27 18:01:05,939 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:01:05,939 INFO L93 Difference]: Finished difference Result 81 states and 100 transitions. [2022-04-27 18:01:05,939 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 100 transitions. [2022-04-27 18:01:05,939 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 18:01:05,940 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 18:01:05,940 INFO L74 IsIncluded]: Start isIncluded. First operand has 62 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 81 states. [2022-04-27 18:01:05,940 INFO L87 Difference]: Start difference. First operand has 62 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 81 states. [2022-04-27 18:01:05,942 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:01:05,943 INFO L93 Difference]: Finished difference Result 81 states and 100 transitions. [2022-04-27 18:01:05,943 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 100 transitions. [2022-04-27 18:01:05,948 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 18:01:05,949 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 18:01:05,949 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 18:01:05,949 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 18:01:05,949 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 62 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-27 18:01:05,950 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 72 transitions. [2022-04-27 18:01:05,951 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 72 transitions. Word has length 29 [2022-04-27 18:01:05,951 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 18:01:05,951 INFO L495 AbstractCegarLoop]: Abstraction has 62 states and 72 transitions. [2022-04-27 18:01:05,951 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 2.0625) internal successors, (33), 14 states have internal predecessors, (33), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 18:01:05,951 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 72 transitions. [2022-04-27 18:01:05,951 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-27 18:01:05,952 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 18:01:05,952 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 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-27 18:01:05,961 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-27 18:01:06,152 WARN L477 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-27 18:01:06,152 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 18:01:06,153 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 18:01:06,153 INFO L85 PathProgramCache]: Analyzing trace with hash -1142360470, now seen corresponding path program 2 times [2022-04-27 18:01:06,153 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 18:01:06,153 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [242318094] [2022-04-27 18:01:06,153 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 18:01:06,153 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 18:01:06,165 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 18:01:06,165 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [135331420] [2022-04-27 18:01:06,165 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 18:01:06,165 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 18:01:06,165 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 18:01:06,166 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-27 18:01:06,184 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process