/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/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound100.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 04:48:35,240 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 04:48:35,259 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 04:48:35,306 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 04:48:35,307 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 04:48:35,307 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 04:48:35,309 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 04:48:35,310 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 04:48:35,313 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 04:48:35,313 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 04:48:35,314 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 04:48:35,315 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 04:48:35,316 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 04:48:35,316 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 04:48:35,317 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 04:48:35,318 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 04:48:35,319 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 04:48:35,322 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 04:48:35,326 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 04:48:35,327 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 04:48:35,329 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 04:48:35,329 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 04:48:35,330 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 04:48:35,331 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 04:48:35,331 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 04:48:35,334 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 04:48:35,334 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 04:48:35,334 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 04:48:35,335 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 04:48:35,335 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 04:48:35,336 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 04:48:35,336 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 04:48:35,337 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 04:48:35,337 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 04:48:35,338 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 04:48:35,338 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 04:48:35,339 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 04:48:35,339 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 04:48:35,339 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 04:48:35,339 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 04:48:35,340 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 04:48:35,342 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 04:48:35,342 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-28 04:48:35,349 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 04:48:35,349 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 04:48:35,350 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 04:48:35,350 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 04:48:35,350 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 04:48:35,351 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 04:48:35,351 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 04:48:35,351 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 04:48:35,351 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 04:48:35,351 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 04:48:35,351 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 04:48:35,351 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 04:48:35,352 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 04:48:35,352 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 04:48:35,352 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 04:48:35,352 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 04:48:35,352 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 04:48:35,352 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 04:48:35,353 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 04:48:35,353 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 04:48:35,353 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 04:48:35,353 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 04:48:35,353 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 04:48:35,353 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 04:48:35,353 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 04:48:35,354 INFO L138 SettingsManager]: * Use separate solver for trace checks=false 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-28 04:48:35,561 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 04:48:35,586 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 04:48:35,588 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 04:48:35,588 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 04:48:35,590 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 04:48:35,591 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound100.c [2022-04-28 04:48:35,646 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b31bffe3c/c589cfca5264443d9fe9924565c94fe2/FLAG80b3817d6 [2022-04-28 04:48:35,999 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 04:48:36,000 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound100.c [2022-04-28 04:48:36,005 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b31bffe3c/c589cfca5264443d9fe9924565c94fe2/FLAG80b3817d6 [2022-04-28 04:48:36,424 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b31bffe3c/c589cfca5264443d9fe9924565c94fe2 [2022-04-28 04:48:36,426 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 04:48:36,427 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 04:48:36,430 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 04:48:36,430 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 04:48:36,438 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 04:48:36,439 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 04:48:36" (1/1) ... [2022-04-28 04:48:36,440 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4300c302 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:48:36, skipping insertion in model container [2022-04-28 04:48:36,440 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 04:48:36" (1/1) ... [2022-04-28 04:48:36,460 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 04:48:36,486 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 04:48:36,689 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/cohendiv-ll_valuebound100.c[576,589] [2022-04-28 04:48:36,726 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 04:48:36,746 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 04:48:36,760 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/cohendiv-ll_valuebound100.c[576,589] [2022-04-28 04:48:36,767 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 04:48:36,777 INFO L208 MainTranslator]: Completed translation [2022-04-28 04:48:36,777 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:48:36 WrapperNode [2022-04-28 04:48:36,777 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 04:48:36,778 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 04:48:36,778 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 04:48:36,778 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 04:48:36,787 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:48:36" (1/1) ... [2022-04-28 04:48:36,787 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:48:36" (1/1) ... [2022-04-28 04:48:36,795 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:48:36" (1/1) ... [2022-04-28 04:48:36,796 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:48:36" (1/1) ... [2022-04-28 04:48:36,812 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:48:36" (1/1) ... [2022-04-28 04:48:36,820 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:48:36" (1/1) ... [2022-04-28 04:48:36,825 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:48:36" (1/1) ... [2022-04-28 04:48:36,826 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 04:48:36,827 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 04:48:36,827 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 04:48:36,827 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 04:48:36,830 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:48:36" (1/1) ... [2022-04-28 04:48:36,836 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 04:48:36,846 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:48:36,859 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-28 04:48:36,880 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-28 04:48:36,900 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 04:48:36,900 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 04:48:36,900 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 04:48:36,900 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 04:48:36,900 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 04:48:36,901 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 04:48:36,901 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 04:48:36,901 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 04:48:36,901 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 04:48:36,902 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 04:48:36,902 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 04:48:36,902 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 04:48:36,903 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 04:48:36,903 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 04:48:36,903 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 04:48:36,903 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 04:48:36,903 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 04:48:36,903 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 04:48:36,903 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 04:48:36,903 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 04:48:36,962 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 04:48:36,964 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 04:48:37,164 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 04:48:37,170 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 04:48:37,170 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-28 04:48:37,171 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 04:48:37 BoogieIcfgContainer [2022-04-28 04:48:37,171 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 04:48:37,183 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 04:48:37,183 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 04:48:37,186 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 04:48:37,186 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 04:48:36" (1/3) ... [2022-04-28 04:48:37,187 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2b6cee4a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 04:48:37, skipping insertion in model container [2022-04-28 04:48:37,187 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:48:36" (2/3) ... [2022-04-28 04:48:37,187 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2b6cee4a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 04:48:37, skipping insertion in model container [2022-04-28 04:48:37,187 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 04:48:37" (3/3) ... [2022-04-28 04:48:37,188 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_valuebound100.c [2022-04-28 04:48:37,211 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 04:48:37,212 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 04:48:37,281 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 04:48:37,294 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, 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@12f39c64, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@6a83c495 [2022-04-28 04:48:37,294 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 04:48:37,301 INFO L276 IsEmpty]: Start isEmpty. Operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 22 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 04:48:37,308 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 04:48:37,308 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:48:37,308 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:48:37,309 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:48:37,315 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:48:37,315 INFO L85 PathProgramCache]: Analyzing trace with hash -1768835633, now seen corresponding path program 1 times [2022-04-28 04:48:37,322 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:48:37,322 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2082623726] [2022-04-28 04:48:37,334 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:48:37,334 INFO L85 PathProgramCache]: Analyzing trace with hash -1768835633, now seen corresponding path program 2 times [2022-04-28 04:48:37,337 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:48:37,338 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1319872463] [2022-04-28 04:48:37,338 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:48:37,339 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:48:37,459 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:48:37,519 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:48:37,524 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:48:37,536 INFO L290 TraceCheckUtils]: 0: Hoare triple {59#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3); {42#true} is VALID [2022-04-28 04:48:37,536 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-28 04:48:37,537 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-28 04:48:37,537 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:48:37,539 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:48:37,544 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-28 04:48:37,544 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-28 04:48:37,545 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-28 04:48:37,545 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-28 04:48:37,545 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-28 04:48:37,546 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:48:37,551 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-28 04:48:37,551 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-28 04:48:37,552 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-28 04:48:37,552 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-28 04:48:37,552 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 04:48:37,554 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:48:37,558 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-28 04:48:37,558 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-28 04:48:37,559 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-28 04:48:37,559 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-28 04:48:37,560 INFO L272 TraceCheckUtils]: 0: Hoare triple {42#true} call ULTIMATE.init(); {59#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:48:37,560 INFO L290 TraceCheckUtils]: 1: Hoare triple {59#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3); {42#true} is VALID [2022-04-28 04:48:37,560 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-28 04:48:37,560 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-28 04:48:37,561 INFO L272 TraceCheckUtils]: 4: Hoare triple {42#true} call #t~ret6 := main(); {42#true} is VALID [2022-04-28 04:48:37,561 INFO L290 TraceCheckUtils]: 5: Hoare triple {42#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {42#true} is VALID [2022-04-28 04:48:37,561 INFO L272 TraceCheckUtils]: 6: Hoare triple {42#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {42#true} is VALID [2022-04-28 04:48:37,561 INFO L290 TraceCheckUtils]: 7: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-28 04:48:37,563 INFO L290 TraceCheckUtils]: 8: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-28 04:48:37,563 INFO L290 TraceCheckUtils]: 9: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-28 04:48:37,563 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-28 04:48:37,563 INFO L290 TraceCheckUtils]: 11: Hoare triple {43#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {43#false} is VALID [2022-04-28 04:48:37,563 INFO L272 TraceCheckUtils]: 12: Hoare triple {43#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {42#true} is VALID [2022-04-28 04:48:37,564 INFO L290 TraceCheckUtils]: 13: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-28 04:48:37,565 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-28 04:48:37,565 INFO L290 TraceCheckUtils]: 15: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-28 04:48:37,565 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-28 04:48:37,566 INFO L272 TraceCheckUtils]: 17: Hoare triple {43#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {42#true} is VALID [2022-04-28 04:48:37,566 INFO L290 TraceCheckUtils]: 18: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-28 04:48:37,566 INFO L290 TraceCheckUtils]: 19: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-28 04:48:37,567 INFO L290 TraceCheckUtils]: 20: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-28 04:48:37,567 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-28 04:48:37,568 INFO L290 TraceCheckUtils]: 22: Hoare triple {43#false} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {43#false} is VALID [2022-04-28 04:48:37,568 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#false} assume false; {43#false} is VALID [2022-04-28 04:48:37,568 INFO L272 TraceCheckUtils]: 24: Hoare triple {43#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {43#false} is VALID [2022-04-28 04:48:37,569 INFO L290 TraceCheckUtils]: 25: Hoare triple {43#false} ~cond := #in~cond; {43#false} is VALID [2022-04-28 04:48:37,569 INFO L290 TraceCheckUtils]: 26: Hoare triple {43#false} assume 0 == ~cond; {43#false} is VALID [2022-04-28 04:48:37,569 INFO L290 TraceCheckUtils]: 27: Hoare triple {43#false} assume !false; {43#false} is VALID [2022-04-28 04:48:37,569 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 04:48:37,570 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:48:37,570 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1319872463] [2022-04-28 04:48:37,571 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1319872463] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:48:37,571 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:48:37,571 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 04:48:37,575 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:48:37,575 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2082623726] [2022-04-28 04:48:37,576 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2082623726] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:48:37,576 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:48:37,576 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 04:48:37,576 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1568076587] [2022-04-28 04:48:37,576 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:48:37,581 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-28 04:48:37,583 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:48:37,586 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 04:48:37,623 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:37,623 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 04:48:37,623 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:48:37,646 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 04:48:37,646 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 04:48:37,648 INFO L87 Difference]: Start difference. First operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 22 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 04:48:37,792 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:37,792 INFO L93 Difference]: Finished difference Result 71 states and 110 transitions. [2022-04-28 04:48:37,792 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 04:48:37,792 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-28 04:48:37,793 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:48:37,794 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 04:48:37,810 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-28 04:48:37,810 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 04:48:37,815 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-28 04:48:37,815 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 110 transitions. [2022-04-28 04:48:37,999 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:38,016 INFO L225 Difference]: With dead ends: 71 [2022-04-28 04:48:38,017 INFO L226 Difference]: Without dead ends: 34 [2022-04-28 04:48:38,020 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 12 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-28 04:48:38,025 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 21 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 12 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 12 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 04:48:38,026 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [31 Valid, 41 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 12 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 04:48:38,037 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-28 04:48:38,051 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-28 04:48:38,051 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:48:38,052 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 04:48:38,053 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 04:48:38,053 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 04:48:38,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:38,058 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-28 04:48:38,058 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-28 04:48:38,059 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:48:38,059 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:48:38,059 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 34 states. [2022-04-28 04:48:38,060 INFO L87 Difference]: Start difference. First operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 34 states. [2022-04-28 04:48:38,064 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:38,064 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-28 04:48:38,064 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-28 04:48:38,065 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:48:38,065 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:48:38,065 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:48:38,066 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:48:38,066 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 04:48:38,069 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 43 transitions. [2022-04-28 04:48:38,070 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 43 transitions. Word has length 28 [2022-04-28 04:48:38,070 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:48:38,070 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 43 transitions. [2022-04-28 04:48:38,070 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 04:48:38,071 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 43 transitions. [2022-04-28 04:48:38,123 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:38,124 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-28 04:48:38,125 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 04:48:38,125 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:48:38,125 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:48:38,125 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 04:48:38,125 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:48:38,126 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:48:38,126 INFO L85 PathProgramCache]: Analyzing trace with hash 1378913883, now seen corresponding path program 1 times [2022-04-28 04:48:38,126 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:48:38,126 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [860665014] [2022-04-28 04:48:38,127 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:48:38,127 INFO L85 PathProgramCache]: Analyzing trace with hash 1378913883, now seen corresponding path program 2 times [2022-04-28 04:48:38,127 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:48:38,128 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1759203009] [2022-04-28 04:48:38,128 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:48:38,128 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:48:38,150 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:48:38,150 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [673545307] [2022-04-28 04:48:38,150 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:48:38,151 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:48:38,151 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:48:38,164 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-28 04:48:38,181 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-28 04:48:38,213 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 04:48:38,213 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:48:38,215 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 04:48:38,235 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:48:38,239 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:48:40,598 INFO L272 TraceCheckUtils]: 0: Hoare triple {340#true} call ULTIMATE.init(); {340#true} is VALID [2022-04-28 04:48:40,599 INFO L290 TraceCheckUtils]: 1: Hoare triple {340#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3); {340#true} is VALID [2022-04-28 04:48:40,599 INFO L290 TraceCheckUtils]: 2: Hoare triple {340#true} assume true; {340#true} is VALID [2022-04-28 04:48:40,599 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {340#true} {340#true} #98#return; {340#true} is VALID [2022-04-28 04:48:40,600 INFO L272 TraceCheckUtils]: 4: Hoare triple {340#true} call #t~ret6 := main(); {340#true} is VALID [2022-04-28 04:48:40,600 INFO L290 TraceCheckUtils]: 5: Hoare triple {340#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {340#true} is VALID [2022-04-28 04:48:40,600 INFO L272 TraceCheckUtils]: 6: Hoare triple {340#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {340#true} is VALID [2022-04-28 04:48:40,600 INFO L290 TraceCheckUtils]: 7: Hoare triple {340#true} ~cond := #in~cond; {340#true} is VALID [2022-04-28 04:48:40,600 INFO L290 TraceCheckUtils]: 8: Hoare triple {340#true} assume !(0 == ~cond); {340#true} is VALID [2022-04-28 04:48:40,601 INFO L290 TraceCheckUtils]: 9: Hoare triple {340#true} assume true; {340#true} is VALID [2022-04-28 04:48:40,601 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {340#true} {340#true} #78#return; {340#true} is VALID [2022-04-28 04:48:40,601 INFO L290 TraceCheckUtils]: 11: Hoare triple {340#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {340#true} is VALID [2022-04-28 04:48:40,601 INFO L272 TraceCheckUtils]: 12: Hoare triple {340#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {340#true} is VALID [2022-04-28 04:48:40,602 INFO L290 TraceCheckUtils]: 13: Hoare triple {340#true} ~cond := #in~cond; {340#true} is VALID [2022-04-28 04:48:40,602 INFO L290 TraceCheckUtils]: 14: Hoare triple {340#true} assume !(0 == ~cond); {340#true} is VALID [2022-04-28 04:48:40,602 INFO L290 TraceCheckUtils]: 15: Hoare triple {340#true} assume true; {340#true} is VALID [2022-04-28 04:48:40,602 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {340#true} {340#true} #80#return; {340#true} is VALID [2022-04-28 04:48:40,603 INFO L272 TraceCheckUtils]: 17: Hoare triple {340#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {340#true} is VALID [2022-04-28 04:48:40,603 INFO L290 TraceCheckUtils]: 18: Hoare triple {340#true} ~cond := #in~cond; {340#true} is VALID [2022-04-28 04:48:40,603 INFO L290 TraceCheckUtils]: 19: Hoare triple {340#true} assume !(0 == ~cond); {340#true} is VALID [2022-04-28 04:48:40,603 INFO L290 TraceCheckUtils]: 20: Hoare triple {340#true} assume true; {340#true} is VALID [2022-04-28 04:48:40,604 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {340#true} {340#true} #82#return; {340#true} is VALID [2022-04-28 04:48:40,604 INFO L290 TraceCheckUtils]: 22: Hoare triple {340#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {411#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-28 04:48:40,605 INFO L290 TraceCheckUtils]: 23: Hoare triple {411#(and (= main_~a~0 0) (= main_~b~0 0))} assume !false; {411#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-28 04:48:40,606 INFO L272 TraceCheckUtils]: 24: Hoare triple {411#(and (= main_~a~0 0) (= main_~b~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {418#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:48:40,606 INFO L290 TraceCheckUtils]: 25: Hoare triple {418#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {422#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:48:40,607 INFO L290 TraceCheckUtils]: 26: Hoare triple {422#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {341#false} is VALID [2022-04-28 04:48:40,607 INFO L290 TraceCheckUtils]: 27: Hoare triple {341#false} assume !false; {341#false} is VALID [2022-04-28 04:48:40,607 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 04:48:40,608 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 04:48:40,608 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:48:40,608 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1759203009] [2022-04-28 04:48:40,608 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:48:40,608 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [673545307] [2022-04-28 04:48:40,609 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [673545307] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:48:40,609 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:48:40,609 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 04:48:40,610 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:48:40,610 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [860665014] [2022-04-28 04:48:40,610 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [860665014] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:48:40,610 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:48:40,610 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 04:48:40,610 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1554360942] [2022-04-28 04:48:40,611 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:48:40,611 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-28 04:48:40,612 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:48:40,612 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-28 04:48:40,642 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:40,642 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 04:48:40,643 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:48:40,643 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 04:48:40,643 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 04:48:40,644 INFO L87 Difference]: Start difference. First operand 34 states and 43 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-28 04:48:40,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:40,814 INFO L93 Difference]: Finished difference Result 45 states and 56 transitions. [2022-04-28 04:48:40,814 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 04:48:40,815 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-28 04:48:40,815 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:48:40,815 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-28 04:48:40,818 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-28 04:48:40,818 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-28 04:48:40,820 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-28 04:48:40,820 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-28 04:48:40,866 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:40,869 INFO L225 Difference]: With dead ends: 45 [2022-04-28 04:48:40,869 INFO L226 Difference]: Without dead ends: 43 [2022-04-28 04:48:40,869 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 24 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-28 04:48:40,870 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 6 mSDsluCounter, 107 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 149 SdHoareTripleChecker+Invalid, 28 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 04:48:40,871 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 149 Invalid, 28 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 04:48:40,873 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-28 04:48:40,887 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-28 04:48:40,888 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:48:40,888 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 04:48:40,889 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 04:48:40,889 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 04:48:40,892 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:40,892 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-28 04:48:40,893 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-28 04:48:40,893 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:48:40,893 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:48:40,894 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 43 states. [2022-04-28 04:48:40,894 INFO L87 Difference]: Start difference. First operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 43 states. [2022-04-28 04:48:40,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:40,899 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-28 04:48:40,899 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-28 04:48:40,900 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:48:40,900 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:48:40,900 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:48:40,900 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:48:40,901 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 04:48:40,905 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-28 04:48:40,905 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 28 [2022-04-28 04:48:40,906 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:48:40,906 INFO L495 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-28 04:48:40,906 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-28 04:48:40,906 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 40 states and 49 transitions. [2022-04-28 04:48:40,957 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:40,958 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-28 04:48:40,959 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-28 04:48:40,959 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:48:40,959 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:48:40,982 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-28 04:48:41,175 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-28 04:48:41,176 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:48:41,176 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:48:41,176 INFO L85 PathProgramCache]: Analyzing trace with hash -1928335320, now seen corresponding path program 1 times [2022-04-28 04:48:41,176 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:48:41,177 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1973341832] [2022-04-28 04:48:41,177 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:48:41,177 INFO L85 PathProgramCache]: Analyzing trace with hash -1928335320, now seen corresponding path program 2 times [2022-04-28 04:48:41,177 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:48:41,177 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1930894852] [2022-04-28 04:48:41,178 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:48:41,178 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:48:41,196 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:48:41,196 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [690643442] [2022-04-28 04:48:41,197 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:48:41,197 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:48:41,197 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:48:41,198 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-28 04:48:41,219 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-28 04:48:41,256 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:48:41,256 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:48:41,258 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 04:48:41,269 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:48:41,272 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:48:41,582 INFO L272 TraceCheckUtils]: 0: Hoare triple {686#true} call ULTIMATE.init(); {686#true} is VALID [2022-04-28 04:48:41,582 INFO L290 TraceCheckUtils]: 1: Hoare triple {686#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3); {686#true} is VALID [2022-04-28 04:48:41,582 INFO L290 TraceCheckUtils]: 2: Hoare triple {686#true} assume true; {686#true} is VALID [2022-04-28 04:48:41,583 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {686#true} {686#true} #98#return; {686#true} is VALID [2022-04-28 04:48:41,583 INFO L272 TraceCheckUtils]: 4: Hoare triple {686#true} call #t~ret6 := main(); {686#true} is VALID [2022-04-28 04:48:41,583 INFO L290 TraceCheckUtils]: 5: Hoare triple {686#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {686#true} is VALID [2022-04-28 04:48:41,583 INFO L272 TraceCheckUtils]: 6: Hoare triple {686#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {686#true} is VALID [2022-04-28 04:48:41,583 INFO L290 TraceCheckUtils]: 7: Hoare triple {686#true} ~cond := #in~cond; {686#true} is VALID [2022-04-28 04:48:41,584 INFO L290 TraceCheckUtils]: 8: Hoare triple {686#true} assume !(0 == ~cond); {686#true} is VALID [2022-04-28 04:48:41,584 INFO L290 TraceCheckUtils]: 9: Hoare triple {686#true} assume true; {686#true} is VALID [2022-04-28 04:48:41,584 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {686#true} {686#true} #78#return; {686#true} is VALID [2022-04-28 04:48:41,584 INFO L290 TraceCheckUtils]: 11: Hoare triple {686#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {686#true} is VALID [2022-04-28 04:48:41,585 INFO L272 TraceCheckUtils]: 12: Hoare triple {686#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {686#true} is VALID [2022-04-28 04:48:41,586 INFO L290 TraceCheckUtils]: 13: Hoare triple {686#true} ~cond := #in~cond; {730#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 04:48:41,586 INFO L290 TraceCheckUtils]: 14: Hoare triple {730#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {734#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:48:41,587 INFO L290 TraceCheckUtils]: 15: Hoare triple {734#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {734#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:48:41,588 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {734#(not (= |assume_abort_if_not_#in~cond| 0))} {686#true} #80#return; {741#(and (<= 0 main_~y~0) (<= main_~y~0 100))} is VALID [2022-04-28 04:48:41,589 INFO L272 TraceCheckUtils]: 17: Hoare triple {741#(and (<= 0 main_~y~0) (<= main_~y~0 100))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {686#true} is VALID [2022-04-28 04:48:41,589 INFO L290 TraceCheckUtils]: 18: Hoare triple {686#true} ~cond := #in~cond; {730#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 04:48:41,590 INFO L290 TraceCheckUtils]: 19: Hoare triple {730#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {734#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:48:41,591 INFO L290 TraceCheckUtils]: 20: Hoare triple {734#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {734#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:48:41,592 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {734#(not (= |assume_abort_if_not_#in~cond| 0))} {741#(and (<= 0 main_~y~0) (<= main_~y~0 100))} #82#return; {757#(and (<= main_~y~0 100) (<= 1 main_~y~0))} is VALID [2022-04-28 04:48:41,592 INFO L290 TraceCheckUtils]: 22: Hoare triple {757#(and (<= main_~y~0 100) (<= 1 main_~y~0))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-28 04:48:41,593 INFO L290 TraceCheckUtils]: 23: Hoare triple {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0))} assume !false; {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-28 04:48:41,593 INFO L272 TraceCheckUtils]: 24: Hoare triple {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {686#true} is VALID [2022-04-28 04:48:41,593 INFO L290 TraceCheckUtils]: 25: Hoare triple {686#true} ~cond := #in~cond; {686#true} is VALID [2022-04-28 04:48:41,594 INFO L290 TraceCheckUtils]: 26: Hoare triple {686#true} assume !(0 == ~cond); {686#true} is VALID [2022-04-28 04:48:41,594 INFO L290 TraceCheckUtils]: 27: Hoare triple {686#true} assume true; {686#true} is VALID [2022-04-28 04:48:41,595 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {686#true} {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0))} #84#return; {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-28 04:48:41,596 INFO L272 TraceCheckUtils]: 29: Hoare triple {761#(and (= main_~x~0 main_~r~0) (<= main_~y~0 100) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {783#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:48:41,596 INFO L290 TraceCheckUtils]: 30: Hoare triple {783#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {787#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:48:41,598 INFO L290 TraceCheckUtils]: 31: Hoare triple {787#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {687#false} is VALID [2022-04-28 04:48:41,598 INFO L290 TraceCheckUtils]: 32: Hoare triple {687#false} assume !false; {687#false} is VALID [2022-04-28 04:48:41,599 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-28 04:48:41,599 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 04:48:41,599 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:48:41,599 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1930894852] [2022-04-28 04:48:41,599 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:48:41,600 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [690643442] [2022-04-28 04:48:41,600 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [690643442] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:48:41,600 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:48:41,600 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 04:48:41,600 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:48:41,601 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1973341832] [2022-04-28 04:48:41,601 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1973341832] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:48:41,601 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:48:41,601 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 04:48:41,601 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [317661969] [2022-04-28 04:48:41,601 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:48:41,602 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 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 33 [2022-04-28 04:48:41,602 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:48:41,602 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 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-28 04:48:41,628 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:41,629 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 04:48:41,629 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:48:41,629 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 04:48:41,629 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-28 04:48:41,630 INFO L87 Difference]: Start difference. First operand 40 states and 49 transitions. Second operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 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-28 04:48:42,132 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:42,132 INFO L93 Difference]: Finished difference Result 57 states and 72 transitions. [2022-04-28 04:48:42,132 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 04:48:42,133 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 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 33 [2022-04-28 04:48:42,133 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:48:42,133 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 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-28 04:48:42,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-28 04:48:42,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 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-28 04:48:42,137 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-28 04:48:42,137 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 69 transitions. [2022-04-28 04:48:42,210 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:42,212 INFO L225 Difference]: With dead ends: 57 [2022-04-28 04:48:42,212 INFO L226 Difference]: Without dead ends: 54 [2022-04-28 04:48:42,213 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-28 04:48:42,214 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 29 mSDsluCounter, 141 mSDsCounter, 0 mSdLazyCounter, 143 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 180 SdHoareTripleChecker+Invalid, 152 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 143 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 04:48:42,214 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [41 Valid, 180 Invalid, 152 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 143 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 04:48:42,215 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-04-28 04:48:42,254 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 53. [2022-04-28 04:48:42,254 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:48:42,254 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 04:48:42,255 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 04:48:42,255 INFO L87 Difference]: Start difference. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 04:48:42,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:42,259 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-28 04:48:42,259 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-28 04:48:42,260 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:48:42,260 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:48:42,260 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 54 states. [2022-04-28 04:48:42,261 INFO L87 Difference]: Start difference. First operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 54 states. [2022-04-28 04:48:42,263 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:42,264 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-28 04:48:42,264 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-28 04:48:42,264 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:48:42,265 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:48:42,265 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:48:42,265 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:48:42,265 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 04:48:42,268 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 67 transitions. [2022-04-28 04:48:42,268 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 67 transitions. Word has length 33 [2022-04-28 04:48:42,268 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:48:42,268 INFO L495 AbstractCegarLoop]: Abstraction has 53 states and 67 transitions. [2022-04-28 04:48:42,269 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 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-28 04:48:42,269 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 53 states and 67 transitions. [2022-04-28 04:48:42,346 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:42,347 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 67 transitions. [2022-04-28 04:48:42,347 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-28 04:48:42,348 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:48:42,348 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:48:42,373 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-28 04:48:42,563 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-28 04:48:42,564 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:48:42,564 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:48:42,564 INFO L85 PathProgramCache]: Analyzing trace with hash -1297647068, now seen corresponding path program 1 times [2022-04-28 04:48:42,564 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:48:42,564 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [150303253] [2022-04-28 04:48:42,565 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:48:42,565 INFO L85 PathProgramCache]: Analyzing trace with hash -1297647068, now seen corresponding path program 2 times [2022-04-28 04:48:42,565 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:48:42,566 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1135779318] [2022-04-28 04:48:42,566 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:48:42,566 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:48:42,584 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:48:42,585 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [796895801] [2022-04-28 04:48:42,585 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:48:42,585 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:48:42,585 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:48:42,586 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-28 04:48:42,612 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-28 04:48:42,643 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:48:42,643 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:48:42,644 INFO L263 TraceCheckSpWp]: Trace formula consists of 116 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 04:48:42,654 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:48:42,656 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:48:42,771 INFO L272 TraceCheckUtils]: 0: Hoare triple {1125#true} call ULTIMATE.init(); {1125#true} is VALID [2022-04-28 04:48:42,771 INFO L290 TraceCheckUtils]: 1: Hoare triple {1125#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3); {1125#true} is VALID [2022-04-28 04:48:42,772 INFO L290 TraceCheckUtils]: 2: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-28 04:48:42,772 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1125#true} {1125#true} #98#return; {1125#true} is VALID [2022-04-28 04:48:42,772 INFO L272 TraceCheckUtils]: 4: Hoare triple {1125#true} call #t~ret6 := main(); {1125#true} is VALID [2022-04-28 04:48:42,772 INFO L290 TraceCheckUtils]: 5: Hoare triple {1125#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1125#true} is VALID [2022-04-28 04:48:42,772 INFO L272 TraceCheckUtils]: 6: Hoare triple {1125#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {1125#true} is VALID [2022-04-28 04:48:42,772 INFO L290 TraceCheckUtils]: 7: Hoare triple {1125#true} ~cond := #in~cond; {1125#true} is VALID [2022-04-28 04:48:42,773 INFO L290 TraceCheckUtils]: 8: Hoare triple {1125#true} assume !(0 == ~cond); {1125#true} is VALID [2022-04-28 04:48:42,773 INFO L290 TraceCheckUtils]: 9: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-28 04:48:42,773 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1125#true} {1125#true} #78#return; {1125#true} is VALID [2022-04-28 04:48:42,773 INFO L290 TraceCheckUtils]: 11: Hoare triple {1125#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1125#true} is VALID [2022-04-28 04:48:42,773 INFO L272 TraceCheckUtils]: 12: Hoare triple {1125#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {1125#true} is VALID [2022-04-28 04:48:42,773 INFO L290 TraceCheckUtils]: 13: Hoare triple {1125#true} ~cond := #in~cond; {1125#true} is VALID [2022-04-28 04:48:42,774 INFO L290 TraceCheckUtils]: 14: Hoare triple {1125#true} assume !(0 == ~cond); {1125#true} is VALID [2022-04-28 04:48:42,774 INFO L290 TraceCheckUtils]: 15: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-28 04:48:42,774 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1125#true} {1125#true} #80#return; {1125#true} is VALID [2022-04-28 04:48:42,774 INFO L272 TraceCheckUtils]: 17: Hoare triple {1125#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1125#true} is VALID [2022-04-28 04:48:42,774 INFO L290 TraceCheckUtils]: 18: Hoare triple {1125#true} ~cond := #in~cond; {1125#true} is VALID [2022-04-28 04:48:42,774 INFO L290 TraceCheckUtils]: 19: Hoare triple {1125#true} assume !(0 == ~cond); {1125#true} is VALID [2022-04-28 04:48:42,775 INFO L290 TraceCheckUtils]: 20: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-28 04:48:42,775 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1125#true} {1125#true} #82#return; {1125#true} is VALID [2022-04-28 04:48:42,775 INFO L290 TraceCheckUtils]: 22: Hoare triple {1125#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1125#true} is VALID [2022-04-28 04:48:42,775 INFO L290 TraceCheckUtils]: 23: Hoare triple {1125#true} assume !false; {1125#true} is VALID [2022-04-28 04:48:42,775 INFO L272 TraceCheckUtils]: 24: Hoare triple {1125#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1125#true} is VALID [2022-04-28 04:48:42,775 INFO L290 TraceCheckUtils]: 25: Hoare triple {1125#true} ~cond := #in~cond; {1125#true} is VALID [2022-04-28 04:48:42,775 INFO L290 TraceCheckUtils]: 26: Hoare triple {1125#true} assume !(0 == ~cond); {1125#true} is VALID [2022-04-28 04:48:42,776 INFO L290 TraceCheckUtils]: 27: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-28 04:48:42,776 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1125#true} {1125#true} #84#return; {1125#true} is VALID [2022-04-28 04:48:42,776 INFO L272 TraceCheckUtils]: 29: Hoare triple {1125#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1125#true} is VALID [2022-04-28 04:48:42,776 INFO L290 TraceCheckUtils]: 30: Hoare triple {1125#true} ~cond := #in~cond; {1125#true} is VALID [2022-04-28 04:48:42,776 INFO L290 TraceCheckUtils]: 31: Hoare triple {1125#true} assume !(0 == ~cond); {1125#true} is VALID [2022-04-28 04:48:42,776 INFO L290 TraceCheckUtils]: 32: Hoare triple {1125#true} assume true; {1125#true} is VALID [2022-04-28 04:48:42,776 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1125#true} {1125#true} #86#return; {1125#true} is VALID [2022-04-28 04:48:42,777 INFO L290 TraceCheckUtils]: 34: Hoare triple {1125#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1232#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-28 04:48:42,778 INFO L290 TraceCheckUtils]: 35: Hoare triple {1232#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} assume !false; {1232#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-28 04:48:42,779 INFO L272 TraceCheckUtils]: 36: Hoare triple {1232#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1239#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:48:42,779 INFO L290 TraceCheckUtils]: 37: Hoare triple {1239#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1243#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:48:42,779 INFO L290 TraceCheckUtils]: 38: Hoare triple {1243#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1126#false} is VALID [2022-04-28 04:48:42,780 INFO L290 TraceCheckUtils]: 39: Hoare triple {1126#false} assume !false; {1126#false} is VALID [2022-04-28 04:48:42,804 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-28 04:48:42,804 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 04:48:42,804 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:48:42,804 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1135779318] [2022-04-28 04:48:42,805 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:48:42,805 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [796895801] [2022-04-28 04:48:42,805 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [796895801] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:48:42,805 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:48:42,805 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 04:48:42,805 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:48:42,805 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [150303253] [2022-04-28 04:48:42,806 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [150303253] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:48:42,806 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:48:42,806 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 04:48:42,806 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [545831290] [2022-04-28 04:48:42,806 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:48:42,806 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 40 [2022-04-28 04:48:42,807 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:48:42,807 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-28 04:48:42,832 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:42,832 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 04:48:42,832 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:48:42,833 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 04:48:42,833 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 04:48:42,833 INFO L87 Difference]: Start difference. First operand 53 states and 67 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-28 04:48:43,119 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:43,119 INFO L93 Difference]: Finished difference Result 79 states and 105 transitions. [2022-04-28 04:48:43,119 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 04:48:43,120 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 40 [2022-04-28 04:48:43,120 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:48:43,120 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-28 04:48:43,122 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 69 transitions. [2022-04-28 04:48:43,122 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-28 04:48:43,123 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 69 transitions. [2022-04-28 04:48:43,123 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 69 transitions. [2022-04-28 04:48:43,182 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:43,185 INFO L225 Difference]: With dead ends: 79 [2022-04-28 04:48:43,185 INFO L226 Difference]: Without dead ends: 77 [2022-04-28 04:48:43,185 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 40 GetRequests, 36 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-28 04:48:43,186 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 10 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 64 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 65 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 64 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 04:48:43,186 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [16 Valid, 144 Invalid, 65 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 64 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 04:48:43,187 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2022-04-28 04:48:43,258 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 70. [2022-04-28 04:48:43,259 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:48:43,260 INFO L82 GeneralOperation]: Start isEquivalent. First operand 77 states. Second operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:48:43,263 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:48:43,263 INFO L87 Difference]: Start difference. First operand 77 states. Second operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:48:43,268 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:43,268 INFO L93 Difference]: Finished difference Result 77 states and 103 transitions. [2022-04-28 04:48:43,268 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 103 transitions. [2022-04-28 04:48:43,269 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:48:43,269 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:48:43,270 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 77 states. [2022-04-28 04:48:43,271 INFO L87 Difference]: Start difference. First operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 77 states. [2022-04-28 04:48:43,277 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:43,277 INFO L93 Difference]: Finished difference Result 77 states and 103 transitions. [2022-04-28 04:48:43,277 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 103 transitions. [2022-04-28 04:48:43,278 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:48:43,278 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:48:43,278 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:48:43,278 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:48:43,279 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:48:43,283 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 92 transitions. [2022-04-28 04:48:43,284 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 92 transitions. Word has length 40 [2022-04-28 04:48:43,284 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:48:43,284 INFO L495 AbstractCegarLoop]: Abstraction has 70 states and 92 transitions. [2022-04-28 04:48:43,284 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-28 04:48:43,284 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 70 states and 92 transitions. [2022-04-28 04:48:43,403 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:43,403 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 92 transitions. [2022-04-28 04:48:43,405 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-28 04:48:43,405 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:48:43,405 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:48:43,430 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-28 04:48:43,627 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-28 04:48:43,627 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:48:43,628 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:48:43,628 INFO L85 PathProgramCache]: Analyzing trace with hash -391974204, now seen corresponding path program 1 times [2022-04-28 04:48:43,628 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:48:43,628 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [519299231] [2022-04-28 04:48:43,629 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:48:43,629 INFO L85 PathProgramCache]: Analyzing trace with hash -391974204, now seen corresponding path program 2 times [2022-04-28 04:48:43,629 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:48:43,629 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1594515335] [2022-04-28 04:48:43,629 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:48:43,629 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:48:43,649 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:48:43,649 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1120340233] [2022-04-28 04:48:43,649 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:48:43,649 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:48:43,650 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:48:43,653 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-28 04:48:43,658 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-28 04:48:43,706 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:48:43,707 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:48:43,707 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 04:48:43,726 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:48:43,727 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:48:43,930 INFO L272 TraceCheckUtils]: 0: Hoare triple {1703#true} call ULTIMATE.init(); {1703#true} is VALID [2022-04-28 04:48:43,930 INFO L290 TraceCheckUtils]: 1: Hoare triple {1703#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3); {1703#true} is VALID [2022-04-28 04:48:43,930 INFO L290 TraceCheckUtils]: 2: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-28 04:48:43,930 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1703#true} {1703#true} #98#return; {1703#true} is VALID [2022-04-28 04:48:43,930 INFO L272 TraceCheckUtils]: 4: Hoare triple {1703#true} call #t~ret6 := main(); {1703#true} is VALID [2022-04-28 04:48:43,931 INFO L290 TraceCheckUtils]: 5: Hoare triple {1703#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1703#true} is VALID [2022-04-28 04:48:43,931 INFO L272 TraceCheckUtils]: 6: Hoare triple {1703#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {1703#true} is VALID [2022-04-28 04:48:43,931 INFO L290 TraceCheckUtils]: 7: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-28 04:48:43,931 INFO L290 TraceCheckUtils]: 8: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-28 04:48:43,931 INFO L290 TraceCheckUtils]: 9: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-28 04:48:43,932 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1703#true} {1703#true} #78#return; {1703#true} is VALID [2022-04-28 04:48:43,932 INFO L290 TraceCheckUtils]: 11: Hoare triple {1703#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1703#true} is VALID [2022-04-28 04:48:43,932 INFO L272 TraceCheckUtils]: 12: Hoare triple {1703#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {1703#true} is VALID [2022-04-28 04:48:43,932 INFO L290 TraceCheckUtils]: 13: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-28 04:48:43,932 INFO L290 TraceCheckUtils]: 14: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-28 04:48:43,932 INFO L290 TraceCheckUtils]: 15: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-28 04:48:43,933 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1703#true} {1703#true} #80#return; {1703#true} is VALID [2022-04-28 04:48:43,933 INFO L272 TraceCheckUtils]: 17: Hoare triple {1703#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1703#true} is VALID [2022-04-28 04:48:43,933 INFO L290 TraceCheckUtils]: 18: Hoare triple {1703#true} ~cond := #in~cond; {1762#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 04:48:43,933 INFO L290 TraceCheckUtils]: 19: Hoare triple {1762#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1766#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:48:43,934 INFO L290 TraceCheckUtils]: 20: Hoare triple {1766#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1766#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:48:43,934 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1766#(not (= |assume_abort_if_not_#in~cond| 0))} {1703#true} #82#return; {1773#(<= 1 main_~y~0)} is VALID [2022-04-28 04:48:43,935 INFO L290 TraceCheckUtils]: 22: Hoare triple {1773#(<= 1 main_~y~0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1773#(<= 1 main_~y~0)} is VALID [2022-04-28 04:48:43,935 INFO L290 TraceCheckUtils]: 23: Hoare triple {1773#(<= 1 main_~y~0)} assume !false; {1773#(<= 1 main_~y~0)} is VALID [2022-04-28 04:48:43,935 INFO L272 TraceCheckUtils]: 24: Hoare triple {1773#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1703#true} is VALID [2022-04-28 04:48:43,935 INFO L290 TraceCheckUtils]: 25: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-28 04:48:43,936 INFO L290 TraceCheckUtils]: 26: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-28 04:48:43,936 INFO L290 TraceCheckUtils]: 27: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-28 04:48:43,936 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1703#true} {1773#(<= 1 main_~y~0)} #84#return; {1773#(<= 1 main_~y~0)} is VALID [2022-04-28 04:48:43,948 INFO L272 TraceCheckUtils]: 29: Hoare triple {1773#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1703#true} is VALID [2022-04-28 04:48:43,949 INFO L290 TraceCheckUtils]: 30: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-28 04:48:43,949 INFO L290 TraceCheckUtils]: 31: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-28 04:48:43,949 INFO L290 TraceCheckUtils]: 32: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-28 04:48:43,950 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1703#true} {1773#(<= 1 main_~y~0)} #86#return; {1773#(<= 1 main_~y~0)} is VALID [2022-04-28 04:48:43,951 INFO L290 TraceCheckUtils]: 34: Hoare triple {1773#(<= 1 main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1813#(<= 1 main_~r~0)} is VALID [2022-04-28 04:48:43,951 INFO L290 TraceCheckUtils]: 35: Hoare triple {1813#(<= 1 main_~r~0)} assume !false; {1813#(<= 1 main_~r~0)} is VALID [2022-04-28 04:48:43,952 INFO L272 TraceCheckUtils]: 36: Hoare triple {1813#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1703#true} is VALID [2022-04-28 04:48:43,952 INFO L290 TraceCheckUtils]: 37: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-28 04:48:43,952 INFO L290 TraceCheckUtils]: 38: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-28 04:48:43,952 INFO L290 TraceCheckUtils]: 39: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-28 04:48:43,953 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1703#true} {1813#(<= 1 main_~r~0)} #88#return; {1813#(<= 1 main_~r~0)} is VALID [2022-04-28 04:48:43,954 INFO L272 TraceCheckUtils]: 41: Hoare triple {1813#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1703#true} is VALID [2022-04-28 04:48:43,954 INFO L290 TraceCheckUtils]: 42: Hoare triple {1703#true} ~cond := #in~cond; {1703#true} is VALID [2022-04-28 04:48:43,954 INFO L290 TraceCheckUtils]: 43: Hoare triple {1703#true} assume !(0 == ~cond); {1703#true} is VALID [2022-04-28 04:48:43,954 INFO L290 TraceCheckUtils]: 44: Hoare triple {1703#true} assume true; {1703#true} is VALID [2022-04-28 04:48:43,958 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1703#true} {1813#(<= 1 main_~r~0)} #90#return; {1813#(<= 1 main_~r~0)} is VALID [2022-04-28 04:48:43,959 INFO L272 TraceCheckUtils]: 46: Hoare triple {1813#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {1850#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:48:43,959 INFO L290 TraceCheckUtils]: 47: Hoare triple {1850#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1854#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:48:43,959 INFO L290 TraceCheckUtils]: 48: Hoare triple {1854#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1704#false} is VALID [2022-04-28 04:48:43,960 INFO L290 TraceCheckUtils]: 49: Hoare triple {1704#false} assume !false; {1704#false} is VALID [2022-04-28 04:48:43,960 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-28 04:48:43,960 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 04:48:43,960 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:48:43,960 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1594515335] [2022-04-28 04:48:43,960 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:48:43,960 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1120340233] [2022-04-28 04:48:43,961 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1120340233] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:48:43,961 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:48:43,961 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 04:48:43,961 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:48:43,961 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [519299231] [2022-04-28 04:48:43,961 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [519299231] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:48:43,961 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:48:43,961 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 04:48:43,961 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [900026798] [2022-04-28 04:48:43,962 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:48:43,962 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 50 [2022-04-28 04:48:43,962 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:48:43,962 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-28 04:48:43,998 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:43,998 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 04:48:43,998 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:48:43,999 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 04:48:43,999 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-28 04:48:43,999 INFO L87 Difference]: Start difference. First operand 70 states and 92 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-28 04:48:44,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:44,425 INFO L93 Difference]: Finished difference Result 76 states and 97 transitions. [2022-04-28 04:48:44,425 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 04:48:44,425 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 50 [2022-04-28 04:48:44,426 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:48:44,426 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-28 04:48:44,427 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-28 04:48:44,427 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-28 04:48:44,428 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-28 04:48:44,429 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 48 transitions. [2022-04-28 04:48:44,472 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:44,474 INFO L225 Difference]: With dead ends: 76 [2022-04-28 04:48:44,474 INFO L226 Difference]: Without dead ends: 74 [2022-04-28 04:48:44,474 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 52 GetRequests, 43 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-28 04:48:44,475 INFO L413 NwaCegarLoop]: 34 mSDtfsCounter, 16 mSDsluCounter, 126 mSDsCounter, 0 mSdLazyCounter, 125 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 132 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 04:48:44,475 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [16 Valid, 160 Invalid, 132 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 125 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 04:48:44,475 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-28 04:48:44,560 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2022-04-28 04:48:44,560 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:48:44,560 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:48:44,561 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:48:44,561 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:48:44,564 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:44,564 INFO L93 Difference]: Finished difference Result 74 states and 95 transitions. [2022-04-28 04:48:44,565 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-28 04:48:44,565 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:48:44,565 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:48:44,566 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 74 states. [2022-04-28 04:48:44,566 INFO L87 Difference]: Start difference. First operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 74 states. [2022-04-28 04:48:44,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:44,569 INFO L93 Difference]: Finished difference Result 74 states and 95 transitions. [2022-04-28 04:48:44,569 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-28 04:48:44,570 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:48:44,570 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:48:44,570 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:48:44,570 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:48:44,570 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:48:44,573 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 95 transitions. [2022-04-28 04:48:44,573 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 95 transitions. Word has length 50 [2022-04-28 04:48:44,574 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:48:44,574 INFO L495 AbstractCegarLoop]: Abstraction has 74 states and 95 transitions. [2022-04-28 04:48:44,574 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-28 04:48:44,574 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 74 states and 95 transitions. [2022-04-28 04:48:44,678 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:44,678 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-28 04:48:44,679 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-28 04:48:44,679 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:48:44,679 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:48:44,703 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-28 04:48:44,891 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-28 04:48:44,891 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:48:44,892 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:48:44,892 INFO L85 PathProgramCache]: Analyzing trace with hash 991781023, now seen corresponding path program 1 times [2022-04-28 04:48:44,892 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:48:44,892 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [390560463] [2022-04-28 04:48:44,893 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:48:44,893 INFO L85 PathProgramCache]: Analyzing trace with hash 991781023, now seen corresponding path program 2 times [2022-04-28 04:48:44,893 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:48:44,893 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [523920716] [2022-04-28 04:48:44,893 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:48:44,893 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:48:44,913 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:48:44,913 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1085438632] [2022-04-28 04:48:44,913 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:48:44,913 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:48:44,913 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:48:44,914 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-28 04:48:44,919 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-28 04:48:44,968 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:48:44,968 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:48:44,969 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 04:48:44,986 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:48:44,988 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:48:45,205 INFO L272 TraceCheckUtils]: 0: Hoare triple {2314#true} call ULTIMATE.init(); {2314#true} is VALID [2022-04-28 04:48:45,205 INFO L290 TraceCheckUtils]: 1: Hoare triple {2314#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3); {2314#true} is VALID [2022-04-28 04:48:45,205 INFO L290 TraceCheckUtils]: 2: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-28 04:48:45,205 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2314#true} {2314#true} #98#return; {2314#true} is VALID [2022-04-28 04:48:45,206 INFO L272 TraceCheckUtils]: 4: Hoare triple {2314#true} call #t~ret6 := main(); {2314#true} is VALID [2022-04-28 04:48:45,206 INFO L290 TraceCheckUtils]: 5: Hoare triple {2314#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2314#true} is VALID [2022-04-28 04:48:45,206 INFO L272 TraceCheckUtils]: 6: Hoare triple {2314#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {2314#true} is VALID [2022-04-28 04:48:45,206 INFO L290 TraceCheckUtils]: 7: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-28 04:48:45,206 INFO L290 TraceCheckUtils]: 8: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-28 04:48:45,206 INFO L290 TraceCheckUtils]: 9: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-28 04:48:45,206 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2314#true} {2314#true} #78#return; {2314#true} is VALID [2022-04-28 04:48:45,206 INFO L290 TraceCheckUtils]: 11: Hoare triple {2314#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2314#true} is VALID [2022-04-28 04:48:45,207 INFO L272 TraceCheckUtils]: 12: Hoare triple {2314#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {2314#true} is VALID [2022-04-28 04:48:45,207 INFO L290 TraceCheckUtils]: 13: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-28 04:48:45,207 INFO L290 TraceCheckUtils]: 14: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-28 04:48:45,207 INFO L290 TraceCheckUtils]: 15: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-28 04:48:45,207 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2314#true} {2314#true} #80#return; {2314#true} is VALID [2022-04-28 04:48:45,207 INFO L272 TraceCheckUtils]: 17: Hoare triple {2314#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2314#true} is VALID [2022-04-28 04:48:45,207 INFO L290 TraceCheckUtils]: 18: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-28 04:48:45,208 INFO L290 TraceCheckUtils]: 19: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-28 04:48:45,208 INFO L290 TraceCheckUtils]: 20: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-28 04:48:45,208 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2314#true} {2314#true} #82#return; {2314#true} is VALID [2022-04-28 04:48:45,208 INFO L290 TraceCheckUtils]: 22: Hoare triple {2314#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2314#true} is VALID [2022-04-28 04:48:45,208 INFO L290 TraceCheckUtils]: 23: Hoare triple {2314#true} assume !false; {2314#true} is VALID [2022-04-28 04:48:45,208 INFO L272 TraceCheckUtils]: 24: Hoare triple {2314#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2314#true} is VALID [2022-04-28 04:48:45,208 INFO L290 TraceCheckUtils]: 25: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-28 04:48:45,208 INFO L290 TraceCheckUtils]: 26: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-28 04:48:45,209 INFO L290 TraceCheckUtils]: 27: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-28 04:48:45,209 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2314#true} {2314#true} #84#return; {2314#true} is VALID [2022-04-28 04:48:45,209 INFO L272 TraceCheckUtils]: 29: Hoare triple {2314#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2314#true} is VALID [2022-04-28 04:48:45,209 INFO L290 TraceCheckUtils]: 30: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-28 04:48:45,209 INFO L290 TraceCheckUtils]: 31: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-28 04:48:45,209 INFO L290 TraceCheckUtils]: 32: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-28 04:48:45,209 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2314#true} {2314#true} #86#return; {2314#true} is VALID [2022-04-28 04:48:45,209 INFO L290 TraceCheckUtils]: 34: Hoare triple {2314#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2314#true} is VALID [2022-04-28 04:48:45,209 INFO L290 TraceCheckUtils]: 35: Hoare triple {2314#true} assume !false; {2314#true} is VALID [2022-04-28 04:48:45,210 INFO L272 TraceCheckUtils]: 36: Hoare triple {2314#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2314#true} is VALID [2022-04-28 04:48:45,210 INFO L290 TraceCheckUtils]: 37: Hoare triple {2314#true} ~cond := #in~cond; {2430#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:48:45,210 INFO L290 TraceCheckUtils]: 38: Hoare triple {2430#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2434#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:48:45,211 INFO L290 TraceCheckUtils]: 39: Hoare triple {2434#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2434#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:48:45,212 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2434#(not (= |__VERIFIER_assert_#in~cond| 0))} {2314#true} #88#return; {2441#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-28 04:48:45,212 INFO L272 TraceCheckUtils]: 41: Hoare triple {2441#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2314#true} is VALID [2022-04-28 04:48:45,212 INFO L290 TraceCheckUtils]: 42: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-28 04:48:45,212 INFO L290 TraceCheckUtils]: 43: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-28 04:48:45,212 INFO L290 TraceCheckUtils]: 44: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-28 04:48:45,213 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2314#true} {2441#(= main_~b~0 (* main_~a~0 main_~y~0))} #90#return; {2441#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-28 04:48:45,213 INFO L272 TraceCheckUtils]: 46: Hoare triple {2441#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2314#true} is VALID [2022-04-28 04:48:45,213 INFO L290 TraceCheckUtils]: 47: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-28 04:48:45,213 INFO L290 TraceCheckUtils]: 48: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-28 04:48:45,213 INFO L290 TraceCheckUtils]: 49: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-28 04:48:45,214 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2314#true} {2441#(= main_~b~0 (* main_~a~0 main_~y~0))} #92#return; {2441#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-28 04:48:45,215 INFO L290 TraceCheckUtils]: 51: Hoare triple {2441#(= main_~b~0 (* main_~a~0 main_~y~0))} assume !!(~r~0 >= 2 * ~b~0); {2475#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-28 04:48:45,216 INFO L272 TraceCheckUtils]: 52: Hoare triple {2475#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {2479#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:48:45,216 INFO L290 TraceCheckUtils]: 53: Hoare triple {2479#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2483#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:48:45,216 INFO L290 TraceCheckUtils]: 54: Hoare triple {2483#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2315#false} is VALID [2022-04-28 04:48:45,217 INFO L290 TraceCheckUtils]: 55: Hoare triple {2315#false} assume !false; {2315#false} is VALID [2022-04-28 04:48:45,217 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-28 04:48:45,217 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:48:51,791 INFO L290 TraceCheckUtils]: 55: Hoare triple {2315#false} assume !false; {2315#false} is VALID [2022-04-28 04:48:51,792 INFO L290 TraceCheckUtils]: 54: Hoare triple {2483#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2315#false} is VALID [2022-04-28 04:48:51,793 INFO L290 TraceCheckUtils]: 53: Hoare triple {2479#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2483#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:48:51,794 INFO L272 TraceCheckUtils]: 52: Hoare triple {2475#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {2479#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:48:51,795 INFO L290 TraceCheckUtils]: 51: Hoare triple {2502#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} assume !!(~r~0 >= 2 * ~b~0); {2475#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-28 04:48:51,799 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2314#true} {2502#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #92#return; {2502#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-28 04:48:51,800 INFO L290 TraceCheckUtils]: 49: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-28 04:48:51,800 INFO L290 TraceCheckUtils]: 48: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-28 04:48:51,800 INFO L290 TraceCheckUtils]: 47: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-28 04:48:51,800 INFO L272 TraceCheckUtils]: 46: Hoare triple {2502#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2314#true} is VALID [2022-04-28 04:48:51,801 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2314#true} {2502#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #90#return; {2502#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-28 04:48:51,801 INFO L290 TraceCheckUtils]: 44: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-28 04:48:51,801 INFO L290 TraceCheckUtils]: 43: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-28 04:48:51,801 INFO L290 TraceCheckUtils]: 42: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-28 04:48:51,801 INFO L272 TraceCheckUtils]: 41: Hoare triple {2502#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2314#true} is VALID [2022-04-28 04:48:51,802 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2434#(not (= |__VERIFIER_assert_#in~cond| 0))} {2314#true} #88#return; {2502#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-28 04:48:51,802 INFO L290 TraceCheckUtils]: 39: Hoare triple {2434#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2434#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:48:51,803 INFO L290 TraceCheckUtils]: 38: Hoare triple {2545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {2434#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:48:51,803 INFO L290 TraceCheckUtils]: 37: Hoare triple {2314#true} ~cond := #in~cond; {2545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 04:48:51,803 INFO L272 TraceCheckUtils]: 36: Hoare triple {2314#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2314#true} is VALID [2022-04-28 04:48:51,804 INFO L290 TraceCheckUtils]: 35: Hoare triple {2314#true} assume !false; {2314#true} is VALID [2022-04-28 04:48:51,804 INFO L290 TraceCheckUtils]: 34: Hoare triple {2314#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2314#true} is VALID [2022-04-28 04:48:51,804 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2314#true} {2314#true} #86#return; {2314#true} is VALID [2022-04-28 04:48:51,804 INFO L290 TraceCheckUtils]: 32: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-28 04:48:51,804 INFO L290 TraceCheckUtils]: 31: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-28 04:48:51,804 INFO L290 TraceCheckUtils]: 30: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-28 04:48:51,804 INFO L272 TraceCheckUtils]: 29: Hoare triple {2314#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2314#true} is VALID [2022-04-28 04:48:51,804 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2314#true} {2314#true} #84#return; {2314#true} is VALID [2022-04-28 04:48:51,805 INFO L290 TraceCheckUtils]: 27: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-28 04:48:51,805 INFO L290 TraceCheckUtils]: 26: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-28 04:48:51,805 INFO L290 TraceCheckUtils]: 25: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-28 04:48:51,805 INFO L272 TraceCheckUtils]: 24: Hoare triple {2314#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2314#true} is VALID [2022-04-28 04:48:51,805 INFO L290 TraceCheckUtils]: 23: Hoare triple {2314#true} assume !false; {2314#true} is VALID [2022-04-28 04:48:51,805 INFO L290 TraceCheckUtils]: 22: Hoare triple {2314#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2314#true} is VALID [2022-04-28 04:48:51,805 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2314#true} {2314#true} #82#return; {2314#true} is VALID [2022-04-28 04:48:51,805 INFO L290 TraceCheckUtils]: 20: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-28 04:48:51,805 INFO L290 TraceCheckUtils]: 19: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-28 04:48:51,806 INFO L290 TraceCheckUtils]: 18: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-28 04:48:51,806 INFO L272 TraceCheckUtils]: 17: Hoare triple {2314#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2314#true} is VALID [2022-04-28 04:48:51,806 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2314#true} {2314#true} #80#return; {2314#true} is VALID [2022-04-28 04:48:51,806 INFO L290 TraceCheckUtils]: 15: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-28 04:48:51,806 INFO L290 TraceCheckUtils]: 14: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-28 04:48:51,806 INFO L290 TraceCheckUtils]: 13: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-28 04:48:51,806 INFO L272 TraceCheckUtils]: 12: Hoare triple {2314#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {2314#true} is VALID [2022-04-28 04:48:51,806 INFO L290 TraceCheckUtils]: 11: Hoare triple {2314#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2314#true} is VALID [2022-04-28 04:48:51,806 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2314#true} {2314#true} #78#return; {2314#true} is VALID [2022-04-28 04:48:51,806 INFO L290 TraceCheckUtils]: 9: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-28 04:48:51,807 INFO L290 TraceCheckUtils]: 8: Hoare triple {2314#true} assume !(0 == ~cond); {2314#true} is VALID [2022-04-28 04:48:51,807 INFO L290 TraceCheckUtils]: 7: Hoare triple {2314#true} ~cond := #in~cond; {2314#true} is VALID [2022-04-28 04:48:51,807 INFO L272 TraceCheckUtils]: 6: Hoare triple {2314#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {2314#true} is VALID [2022-04-28 04:48:51,807 INFO L290 TraceCheckUtils]: 5: Hoare triple {2314#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2314#true} is VALID [2022-04-28 04:48:51,807 INFO L272 TraceCheckUtils]: 4: Hoare triple {2314#true} call #t~ret6 := main(); {2314#true} is VALID [2022-04-28 04:48:51,807 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2314#true} {2314#true} #98#return; {2314#true} is VALID [2022-04-28 04:48:51,807 INFO L290 TraceCheckUtils]: 2: Hoare triple {2314#true} assume true; {2314#true} is VALID [2022-04-28 04:48:51,807 INFO L290 TraceCheckUtils]: 1: Hoare triple {2314#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3); {2314#true} is VALID [2022-04-28 04:48:51,808 INFO L272 TraceCheckUtils]: 0: Hoare triple {2314#true} call ULTIMATE.init(); {2314#true} is VALID [2022-04-28 04:48:51,808 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-28 04:48:51,808 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:48:51,808 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [523920716] [2022-04-28 04:48:51,808 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:48:51,808 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1085438632] [2022-04-28 04:48:51,808 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1085438632] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:48:51,808 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 04:48:51,809 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-28 04:48:51,809 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:48:51,809 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [390560463] [2022-04-28 04:48:51,809 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [390560463] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:48:51,809 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:48:51,809 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 04:48:51,809 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2019669457] [2022-04-28 04:48:51,809 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:48:51,810 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 56 [2022-04-28 04:48:51,810 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:48:51,810 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 04:48:51,839 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-28 04:48:51,839 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 04:48:51,839 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:48:51,839 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 04:48:51,839 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-28 04:48:51,840 INFO L87 Difference]: Start difference. First operand 74 states and 95 transitions. Second operand has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 04:48:52,288 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:52,288 INFO L93 Difference]: Finished difference Result 80 states and 100 transitions. [2022-04-28 04:48:52,288 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 04:48:52,288 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 56 [2022-04-28 04:48:52,288 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:48:52,289 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 04:48:52,290 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-28 04:48:52,290 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 04:48:52,291 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-28 04:48:52,291 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 48 transitions. [2022-04-28 04:48:52,334 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:52,336 INFO L225 Difference]: With dead ends: 80 [2022-04-28 04:48:52,336 INFO L226 Difference]: Without dead ends: 78 [2022-04-28 04:48:52,337 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 102 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=116, Unknown=0, NotChecked=0, Total=156 [2022-04-28 04:48:52,337 INFO L413 NwaCegarLoop]: 28 mSDtfsCounter, 17 mSDsluCounter, 113 mSDsCounter, 0 mSdLazyCounter, 130 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 138 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 130 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 04:48:52,337 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [19 Valid, 141 Invalid, 138 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 130 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 04:48:52,338 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2022-04-28 04:48:52,433 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 78. [2022-04-28 04:48:52,433 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:48:52,433 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:48:52,434 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:48:52,434 INFO L87 Difference]: Start difference. First operand 78 states. Second operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:48:52,438 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:52,438 INFO L93 Difference]: Finished difference Result 78 states and 98 transitions. [2022-04-28 04:48:52,438 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 98 transitions. [2022-04-28 04:48:52,439 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:48:52,439 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:48:52,439 INFO L74 IsIncluded]: Start isIncluded. First operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 78 states. [2022-04-28 04:48:52,439 INFO L87 Difference]: Start difference. First operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 78 states. [2022-04-28 04:48:52,443 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:48:52,443 INFO L93 Difference]: Finished difference Result 78 states and 98 transitions. [2022-04-28 04:48:52,443 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 98 transitions. [2022-04-28 04:48:52,444 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:48:52,444 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:48:52,444 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:48:52,444 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:48:52,444 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:48:52,448 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 98 transitions. [2022-04-28 04:48:52,448 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 98 transitions. Word has length 56 [2022-04-28 04:48:52,448 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:48:52,448 INFO L495 AbstractCegarLoop]: Abstraction has 78 states and 98 transitions. [2022-04-28 04:48:52,449 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 04:48:52,449 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 78 states and 98 transitions. [2022-04-28 04:48:52,566 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:48:52,566 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 98 transitions. [2022-04-28 04:48:52,566 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-28 04:48:52,566 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:48:52,566 INFO L195 NwaCegarLoop]: trace histogram [7, 6, 6, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:48:52,583 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-28 04:48:52,771 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:48:52,771 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:48:52,772 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:48:52,772 INFO L85 PathProgramCache]: Analyzing trace with hash -2096667334, now seen corresponding path program 1 times [2022-04-28 04:48:52,772 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:48:52,772 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [825866526] [2022-04-28 04:48:52,772 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:48:52,772 INFO L85 PathProgramCache]: Analyzing trace with hash -2096667334, now seen corresponding path program 2 times [2022-04-28 04:48:52,772 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:48:52,773 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [849907240] [2022-04-28 04:48:52,773 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:48:52,773 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:48:52,794 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:48:52,794 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1290976528] [2022-04-28 04:48:52,794 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:48:52,795 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:48:52,795 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:48:52,795 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:48:52,796 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-28 04:48:52,840 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:48:52,841 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:48:52,841 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 04:48:52,852 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:48:52,853 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:48:53,140 INFO L272 TraceCheckUtils]: 0: Hoare triple {3137#true} call ULTIMATE.init(); {3137#true} is VALID [2022-04-28 04:48:53,141 INFO L290 TraceCheckUtils]: 1: Hoare triple {3137#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3); {3137#true} is VALID [2022-04-28 04:48:53,141 INFO L290 TraceCheckUtils]: 2: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:48:53,141 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3137#true} {3137#true} #98#return; {3137#true} is VALID [2022-04-28 04:48:53,141 INFO L272 TraceCheckUtils]: 4: Hoare triple {3137#true} call #t~ret6 := main(); {3137#true} is VALID [2022-04-28 04:48:53,141 INFO L290 TraceCheckUtils]: 5: Hoare triple {3137#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3137#true} is VALID [2022-04-28 04:48:53,141 INFO L272 TraceCheckUtils]: 6: Hoare triple {3137#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:48:53,141 INFO L290 TraceCheckUtils]: 7: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:48:53,141 INFO L290 TraceCheckUtils]: 8: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:48:53,142 INFO L290 TraceCheckUtils]: 9: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:48:53,142 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3137#true} {3137#true} #78#return; {3137#true} is VALID [2022-04-28 04:48:53,142 INFO L290 TraceCheckUtils]: 11: Hoare triple {3137#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3137#true} is VALID [2022-04-28 04:48:53,142 INFO L272 TraceCheckUtils]: 12: Hoare triple {3137#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:48:53,142 INFO L290 TraceCheckUtils]: 13: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:48:53,142 INFO L290 TraceCheckUtils]: 14: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:48:53,142 INFO L290 TraceCheckUtils]: 15: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:48:53,142 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3137#true} {3137#true} #80#return; {3137#true} is VALID [2022-04-28 04:48:53,142 INFO L272 TraceCheckUtils]: 17: Hoare triple {3137#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:48:53,142 INFO L290 TraceCheckUtils]: 18: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:48:53,142 INFO L290 TraceCheckUtils]: 19: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:48:53,143 INFO L290 TraceCheckUtils]: 20: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:48:53,143 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3137#true} {3137#true} #82#return; {3137#true} is VALID [2022-04-28 04:48:53,143 INFO L290 TraceCheckUtils]: 22: Hoare triple {3137#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-28 04:48:53,143 INFO L290 TraceCheckUtils]: 23: Hoare triple {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !false; {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-28 04:48:53,144 INFO L272 TraceCheckUtils]: 24: Hoare triple {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:48:53,144 INFO L290 TraceCheckUtils]: 25: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:48:53,144 INFO L290 TraceCheckUtils]: 26: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:48:53,144 INFO L290 TraceCheckUtils]: 27: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:48:53,145 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3137#true} {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #84#return; {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-28 04:48:53,145 INFO L272 TraceCheckUtils]: 29: Hoare triple {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:48:53,145 INFO L290 TraceCheckUtils]: 30: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:48:53,145 INFO L290 TraceCheckUtils]: 31: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:48:53,145 INFO L290 TraceCheckUtils]: 32: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:48:53,146 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {3137#true} {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #86#return; {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-28 04:48:53,146 INFO L290 TraceCheckUtils]: 34: Hoare triple {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:48:53,147 INFO L290 TraceCheckUtils]: 35: Hoare triple {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !false; {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:48:53,147 INFO L272 TraceCheckUtils]: 36: Hoare triple {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:48:53,147 INFO L290 TraceCheckUtils]: 37: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:48:53,147 INFO L290 TraceCheckUtils]: 38: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:48:53,147 INFO L290 TraceCheckUtils]: 39: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:48:53,148 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {3137#true} {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #88#return; {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:48:53,148 INFO L272 TraceCheckUtils]: 41: Hoare triple {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:48:53,148 INFO L290 TraceCheckUtils]: 42: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:48:53,148 INFO L290 TraceCheckUtils]: 43: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:48:53,148 INFO L290 TraceCheckUtils]: 44: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:48:53,149 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3137#true} {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #90#return; {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:48:53,149 INFO L272 TraceCheckUtils]: 46: Hoare triple {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:48:53,149 INFO L290 TraceCheckUtils]: 47: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:48:53,149 INFO L290 TraceCheckUtils]: 48: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:48:53,149 INFO L290 TraceCheckUtils]: 49: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:48:53,150 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3137#true} {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #92#return; {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:48:53,150 INFO L290 TraceCheckUtils]: 51: Hoare triple {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~r~0 >= 2 * ~b~0); {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:48:53,151 INFO L290 TraceCheckUtils]: 52: Hoare triple {3245#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {3300#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 04:48:53,151 INFO L290 TraceCheckUtils]: 53: Hoare triple {3300#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1))} assume !false; {3300#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 04:48:53,151 INFO L272 TraceCheckUtils]: 54: Hoare triple {3300#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:48:53,151 INFO L290 TraceCheckUtils]: 55: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:48:53,152 INFO L290 TraceCheckUtils]: 56: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:48:53,152 INFO L290 TraceCheckUtils]: 57: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:48:53,152 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {3137#true} {3300#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1))} #84#return; {3300#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 04:48:53,153 INFO L272 TraceCheckUtils]: 59: Hoare triple {3300#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3322#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:48:53,153 INFO L290 TraceCheckUtils]: 60: Hoare triple {3322#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3326#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:48:53,154 INFO L290 TraceCheckUtils]: 61: Hoare triple {3326#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3138#false} is VALID [2022-04-28 04:48:53,154 INFO L290 TraceCheckUtils]: 62: Hoare triple {3138#false} assume !false; {3138#false} is VALID [2022-04-28 04:48:53,154 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 12 proven. 3 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-28 04:48:53,154 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:49:13,528 INFO L290 TraceCheckUtils]: 62: Hoare triple {3138#false} assume !false; {3138#false} is VALID [2022-04-28 04:49:13,529 INFO L290 TraceCheckUtils]: 61: Hoare triple {3326#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3138#false} is VALID [2022-04-28 04:49:13,529 INFO L290 TraceCheckUtils]: 60: Hoare triple {3322#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3326#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:49:13,530 INFO L272 TraceCheckUtils]: 59: Hoare triple {3342#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3322#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:49:13,530 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {3137#true} {3342#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #84#return; {3342#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-28 04:49:13,530 INFO L290 TraceCheckUtils]: 57: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:49:13,531 INFO L290 TraceCheckUtils]: 56: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:49:13,531 INFO L290 TraceCheckUtils]: 55: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:49:13,531 INFO L272 TraceCheckUtils]: 54: Hoare triple {3342#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:49:13,535 INFO L290 TraceCheckUtils]: 53: Hoare triple {3342#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !false; {3342#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-28 04:49:13,543 INFO L290 TraceCheckUtils]: 52: Hoare triple {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {3342#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-28 04:49:13,548 INFO L290 TraceCheckUtils]: 51: Hoare triple {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !(~r~0 >= 2 * ~b~0); {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-28 04:49:13,549 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3137#true} {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #92#return; {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-28 04:49:13,549 INFO L290 TraceCheckUtils]: 49: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:49:13,549 INFO L290 TraceCheckUtils]: 48: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:49:13,549 INFO L290 TraceCheckUtils]: 47: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:49:13,549 INFO L272 TraceCheckUtils]: 46: Hoare triple {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:49:13,550 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3137#true} {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #90#return; {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-28 04:49:13,550 INFO L290 TraceCheckUtils]: 44: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:49:13,550 INFO L290 TraceCheckUtils]: 43: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:49:13,550 INFO L290 TraceCheckUtils]: 42: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:49:13,550 INFO L272 TraceCheckUtils]: 41: Hoare triple {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:49:13,551 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {3137#true} {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #88#return; {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-28 04:49:13,551 INFO L290 TraceCheckUtils]: 39: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:49:13,551 INFO L290 TraceCheckUtils]: 38: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:49:13,551 INFO L290 TraceCheckUtils]: 37: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:49:13,552 INFO L272 TraceCheckUtils]: 36: Hoare triple {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:49:13,552 INFO L290 TraceCheckUtils]: 35: Hoare triple {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !false; {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-28 04:49:13,553 INFO L290 TraceCheckUtils]: 34: Hoare triple {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {3364#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-28 04:49:13,553 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {3137#true} {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #86#return; {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-28 04:49:13,553 INFO L290 TraceCheckUtils]: 32: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:49:13,553 INFO L290 TraceCheckUtils]: 31: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:49:13,553 INFO L290 TraceCheckUtils]: 30: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:49:13,553 INFO L272 TraceCheckUtils]: 29: Hoare triple {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:49:13,559 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3137#true} {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #84#return; {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-28 04:49:13,559 INFO L290 TraceCheckUtils]: 27: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:49:13,559 INFO L290 TraceCheckUtils]: 26: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:49:13,560 INFO L290 TraceCheckUtils]: 25: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:49:13,560 INFO L272 TraceCheckUtils]: 24: Hoare triple {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:49:13,560 INFO L290 TraceCheckUtils]: 23: Hoare triple {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !false; {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-28 04:49:13,560 INFO L290 TraceCheckUtils]: 22: Hoare triple {3137#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3208#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-28 04:49:13,561 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3137#true} {3137#true} #82#return; {3137#true} is VALID [2022-04-28 04:49:13,561 INFO L290 TraceCheckUtils]: 20: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:49:13,561 INFO L290 TraceCheckUtils]: 19: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:49:13,561 INFO L290 TraceCheckUtils]: 18: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:49:13,561 INFO L272 TraceCheckUtils]: 17: Hoare triple {3137#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:49:13,561 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3137#true} {3137#true} #80#return; {3137#true} is VALID [2022-04-28 04:49:13,561 INFO L290 TraceCheckUtils]: 15: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:49:13,561 INFO L290 TraceCheckUtils]: 14: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:49:13,561 INFO L290 TraceCheckUtils]: 13: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:49:13,561 INFO L272 TraceCheckUtils]: 12: Hoare triple {3137#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:49:13,562 INFO L290 TraceCheckUtils]: 11: Hoare triple {3137#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3137#true} is VALID [2022-04-28 04:49:13,562 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3137#true} {3137#true} #78#return; {3137#true} is VALID [2022-04-28 04:49:13,562 INFO L290 TraceCheckUtils]: 9: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:49:13,562 INFO L290 TraceCheckUtils]: 8: Hoare triple {3137#true} assume !(0 == ~cond); {3137#true} is VALID [2022-04-28 04:49:13,562 INFO L290 TraceCheckUtils]: 7: Hoare triple {3137#true} ~cond := #in~cond; {3137#true} is VALID [2022-04-28 04:49:13,562 INFO L272 TraceCheckUtils]: 6: Hoare triple {3137#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {3137#true} is VALID [2022-04-28 04:49:13,562 INFO L290 TraceCheckUtils]: 5: Hoare triple {3137#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3137#true} is VALID [2022-04-28 04:49:13,562 INFO L272 TraceCheckUtils]: 4: Hoare triple {3137#true} call #t~ret6 := main(); {3137#true} is VALID [2022-04-28 04:49:13,562 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3137#true} {3137#true} #98#return; {3137#true} is VALID [2022-04-28 04:49:13,562 INFO L290 TraceCheckUtils]: 2: Hoare triple {3137#true} assume true; {3137#true} is VALID [2022-04-28 04:49:13,562 INFO L290 TraceCheckUtils]: 1: Hoare triple {3137#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3); {3137#true} is VALID [2022-04-28 04:49:13,562 INFO L272 TraceCheckUtils]: 0: Hoare triple {3137#true} call ULTIMATE.init(); {3137#true} is VALID [2022-04-28 04:49:13,563 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 12 proven. 3 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-28 04:49:13,563 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:49:13,565 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [849907240] [2022-04-28 04:49:13,565 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:49:13,565 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1290976528] [2022-04-28 04:49:13,566 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1290976528] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:49:13,566 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 04:49:13,566 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 9 [2022-04-28 04:49:13,566 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:49:13,566 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [825866526] [2022-04-28 04:49:13,566 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [825866526] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:49:13,566 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:49:13,566 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 04:49:13,566 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1315380928] [2022-04-28 04:49:13,566 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:49:13,567 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 63 [2022-04-28 04:49:13,567 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:49:13,567 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-28 04:49:13,628 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:49:13,629 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 04:49:13,629 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:49:13,629 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 04:49:13,629 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-04-28 04:49:13,630 INFO L87 Difference]: Start difference. First operand 78 states and 98 transitions. Second operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-28 04:49:14,299 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:49:14,300 INFO L93 Difference]: Finished difference Result 111 states and 142 transitions. [2022-04-28 04:49:14,300 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 04:49:14,300 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 63 [2022-04-28 04:49:14,301 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:49:14,301 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-28 04:49:14,304 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 101 transitions. [2022-04-28 04:49:14,304 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-28 04:49:14,306 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 101 transitions. [2022-04-28 04:49:14,306 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 101 transitions. [2022-04-28 04:49:14,407 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:49:14,409 INFO L225 Difference]: With dead ends: 111 [2022-04-28 04:49:14,409 INFO L226 Difference]: Without dead ends: 108 [2022-04-28 04:49:14,409 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 126 GetRequests, 116 SyntacticMatches, 2 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-28 04:49:14,410 INFO L413 NwaCegarLoop]: 57 mSDtfsCounter, 19 mSDsluCounter, 165 mSDsCounter, 0 mSdLazyCounter, 186 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 222 SdHoareTripleChecker+Invalid, 196 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 186 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 04:49:14,410 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [29 Valid, 222 Invalid, 196 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 186 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 04:49:14,411 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 108 states. [2022-04-28 04:49:14,525 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 108 to 103. [2022-04-28 04:49:14,525 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:49:14,526 INFO L82 GeneralOperation]: Start isEquivalent. First operand 108 states. Second operand has 103 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 34 states have call successors, (34), 11 states have call predecessors, (34), 10 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-28 04:49:14,526 INFO L74 IsIncluded]: Start isIncluded. First operand 108 states. Second operand has 103 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 34 states have call successors, (34), 11 states have call predecessors, (34), 10 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-28 04:49:14,526 INFO L87 Difference]: Start difference. First operand 108 states. Second operand has 103 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 34 states have call successors, (34), 11 states have call predecessors, (34), 10 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-28 04:49:14,532 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:49:14,532 INFO L93 Difference]: Finished difference Result 108 states and 138 transitions. [2022-04-28 04:49:14,532 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 138 transitions. [2022-04-28 04:49:14,532 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:49:14,533 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:49:14,534 INFO L74 IsIncluded]: Start isIncluded. First operand has 103 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 34 states have call successors, (34), 11 states have call predecessors, (34), 10 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) Second operand 108 states. [2022-04-28 04:49:14,534 INFO L87 Difference]: Start difference. First operand has 103 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 34 states have call successors, (34), 11 states have call predecessors, (34), 10 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) Second operand 108 states. [2022-04-28 04:49:14,539 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:49:14,539 INFO L93 Difference]: Finished difference Result 108 states and 138 transitions. [2022-04-28 04:49:14,539 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 138 transitions. [2022-04-28 04:49:14,540 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:49:14,540 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:49:14,540 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:49:14,540 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:49:14,541 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 103 states, 58 states have (on average 1.1379310344827587) internal successors, (66), 60 states have internal predecessors, (66), 34 states have call successors, (34), 11 states have call predecessors, (34), 10 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-28 04:49:14,544 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 103 states to 103 states and 132 transitions. [2022-04-28 04:49:14,544 INFO L78 Accepts]: Start accepts. Automaton has 103 states and 132 transitions. Word has length 63 [2022-04-28 04:49:14,545 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:49:14,545 INFO L495 AbstractCegarLoop]: Abstraction has 103 states and 132 transitions. [2022-04-28 04:49:14,545 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-28 04:49:14,545 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 103 states and 132 transitions. [2022-04-28 04:49:14,711 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:49:14,711 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 132 transitions. [2022-04-28 04:49:14,712 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-28 04:49:14,712 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:49:14,712 INFO L195 NwaCegarLoop]: trace histogram [11, 10, 10, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:49:14,731 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-28 04:49:14,912 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:49:14,913 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:49:14,913 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:49:14,913 INFO L85 PathProgramCache]: Analyzing trace with hash -2105983492, now seen corresponding path program 1 times [2022-04-28 04:49:14,913 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:49:14,913 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [296898095] [2022-04-28 04:49:14,914 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:49:14,914 INFO L85 PathProgramCache]: Analyzing trace with hash -2105983492, now seen corresponding path program 2 times [2022-04-28 04:49:14,914 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:49:14,914 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2026313092] [2022-04-28 04:49:14,914 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:49:14,914 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:49:14,937 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:49:14,938 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2017989766] [2022-04-28 04:49:14,938 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:49:14,938 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:49:14,938 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:49:14,941 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:49:14,955 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-28 04:49:15,016 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:49:15,016 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:49:15,017 INFO L263 TraceCheckSpWp]: Trace formula consists of 200 conjuncts, 35 conjunts are in the unsatisfiable core [2022-04-28 04:49:15,034 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:49:15,036 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:49:16,094 INFO L272 TraceCheckUtils]: 0: Hoare triple {4169#true} call ULTIMATE.init(); {4169#true} is VALID [2022-04-28 04:49:16,094 INFO L290 TraceCheckUtils]: 1: Hoare triple {4169#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3); {4169#true} is VALID [2022-04-28 04:49:16,094 INFO L290 TraceCheckUtils]: 2: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-28 04:49:16,094 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4169#true} {4169#true} #98#return; {4169#true} is VALID [2022-04-28 04:49:16,094 INFO L272 TraceCheckUtils]: 4: Hoare triple {4169#true} call #t~ret6 := main(); {4169#true} is VALID [2022-04-28 04:49:16,094 INFO L290 TraceCheckUtils]: 5: Hoare triple {4169#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {4169#true} is VALID [2022-04-28 04:49:16,094 INFO L272 TraceCheckUtils]: 6: Hoare triple {4169#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {4169#true} is VALID [2022-04-28 04:49:16,094 INFO L290 TraceCheckUtils]: 7: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-28 04:49:16,094 INFO L290 TraceCheckUtils]: 8: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-28 04:49:16,094 INFO L290 TraceCheckUtils]: 9: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-28 04:49:16,095 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4169#true} {4169#true} #78#return; {4169#true} is VALID [2022-04-28 04:49:16,095 INFO L290 TraceCheckUtils]: 11: Hoare triple {4169#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4169#true} is VALID [2022-04-28 04:49:16,095 INFO L272 TraceCheckUtils]: 12: Hoare triple {4169#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {4169#true} is VALID [2022-04-28 04:49:16,095 INFO L290 TraceCheckUtils]: 13: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-28 04:49:16,095 INFO L290 TraceCheckUtils]: 14: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-28 04:49:16,095 INFO L290 TraceCheckUtils]: 15: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-28 04:49:16,095 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4169#true} {4169#true} #80#return; {4169#true} is VALID [2022-04-28 04:49:16,095 INFO L272 TraceCheckUtils]: 17: Hoare triple {4169#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4169#true} is VALID [2022-04-28 04:49:16,095 INFO L290 TraceCheckUtils]: 18: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-28 04:49:16,095 INFO L290 TraceCheckUtils]: 19: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-28 04:49:16,096 INFO L290 TraceCheckUtils]: 20: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-28 04:49:16,096 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4169#true} {4169#true} #82#return; {4169#true} is VALID [2022-04-28 04:49:16,096 INFO L290 TraceCheckUtils]: 22: Hoare triple {4169#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-28 04:49:16,097 INFO L290 TraceCheckUtils]: 23: Hoare triple {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !false; {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-28 04:49:16,097 INFO L272 TraceCheckUtils]: 24: Hoare triple {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4169#true} is VALID [2022-04-28 04:49:16,097 INFO L290 TraceCheckUtils]: 25: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-28 04:49:16,097 INFO L290 TraceCheckUtils]: 26: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-28 04:49:16,097 INFO L290 TraceCheckUtils]: 27: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-28 04:49:16,098 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4169#true} {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #84#return; {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-28 04:49:16,098 INFO L272 TraceCheckUtils]: 29: Hoare triple {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4169#true} is VALID [2022-04-28 04:49:16,098 INFO L290 TraceCheckUtils]: 30: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-28 04:49:16,098 INFO L290 TraceCheckUtils]: 31: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-28 04:49:16,098 INFO L290 TraceCheckUtils]: 32: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-28 04:49:16,099 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {4169#true} {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #86#return; {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-28 04:49:16,099 INFO L290 TraceCheckUtils]: 34: Hoare triple {4240#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:49:16,100 INFO L290 TraceCheckUtils]: 35: Hoare triple {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !false; {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:49:16,100 INFO L272 TraceCheckUtils]: 36: Hoare triple {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4169#true} is VALID [2022-04-28 04:49:16,100 INFO L290 TraceCheckUtils]: 37: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-28 04:49:16,100 INFO L290 TraceCheckUtils]: 38: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-28 04:49:16,100 INFO L290 TraceCheckUtils]: 39: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-28 04:49:16,102 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {4169#true} {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #88#return; {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:49:16,102 INFO L272 TraceCheckUtils]: 41: Hoare triple {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4169#true} is VALID [2022-04-28 04:49:16,102 INFO L290 TraceCheckUtils]: 42: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-28 04:49:16,102 INFO L290 TraceCheckUtils]: 43: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-28 04:49:16,102 INFO L290 TraceCheckUtils]: 44: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-28 04:49:16,103 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4169#true} {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #90#return; {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:49:16,103 INFO L272 TraceCheckUtils]: 46: Hoare triple {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {4169#true} is VALID [2022-04-28 04:49:16,104 INFO L290 TraceCheckUtils]: 47: Hoare triple {4169#true} ~cond := #in~cond; {4317#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:49:16,104 INFO L290 TraceCheckUtils]: 48: Hoare triple {4317#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {4321#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:49:16,104 INFO L290 TraceCheckUtils]: 49: Hoare triple {4321#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4321#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:49:16,105 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4321#(not (= |__VERIFIER_assert_#in~cond| 0))} {4277#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #92#return; {4328#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:49:16,106 INFO L290 TraceCheckUtils]: 51: Hoare triple {4328#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {4328#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:49:16,106 INFO L272 TraceCheckUtils]: 52: Hoare triple {4328#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {4169#true} is VALID [2022-04-28 04:49:16,106 INFO L290 TraceCheckUtils]: 53: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-28 04:49:16,106 INFO L290 TraceCheckUtils]: 54: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-28 04:49:16,106 INFO L290 TraceCheckUtils]: 55: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-28 04:49:16,107 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {4169#true} {4328#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #94#return; {4328#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:49:16,107 INFO L290 TraceCheckUtils]: 57: Hoare triple {4328#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-28 04:49:16,108 INFO L290 TraceCheckUtils]: 58: Hoare triple {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} assume !false; {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-28 04:49:16,108 INFO L272 TraceCheckUtils]: 59: Hoare triple {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4169#true} is VALID [2022-04-28 04:49:16,108 INFO L290 TraceCheckUtils]: 60: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-28 04:49:16,108 INFO L290 TraceCheckUtils]: 61: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-28 04:49:16,108 INFO L290 TraceCheckUtils]: 62: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-28 04:49:16,109 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {4169#true} {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} #88#return; {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-28 04:49:16,109 INFO L272 TraceCheckUtils]: 64: Hoare triple {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4169#true} is VALID [2022-04-28 04:49:16,109 INFO L290 TraceCheckUtils]: 65: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-28 04:49:16,109 INFO L290 TraceCheckUtils]: 66: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-28 04:49:16,109 INFO L290 TraceCheckUtils]: 67: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-28 04:49:16,110 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {4169#true} {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} #90#return; {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-28 04:49:16,110 INFO L272 TraceCheckUtils]: 69: Hoare triple {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {4169#true} is VALID [2022-04-28 04:49:16,110 INFO L290 TraceCheckUtils]: 70: Hoare triple {4169#true} ~cond := #in~cond; {4169#true} is VALID [2022-04-28 04:49:16,110 INFO L290 TraceCheckUtils]: 71: Hoare triple {4169#true} assume !(0 == ~cond); {4169#true} is VALID [2022-04-28 04:49:16,110 INFO L290 TraceCheckUtils]: 72: Hoare triple {4169#true} assume true; {4169#true} is VALID [2022-04-28 04:49:16,111 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {4169#true} {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} #92#return; {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-28 04:49:16,112 INFO L290 TraceCheckUtils]: 74: Hoare triple {4350#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= main_~y~0 main_~r~0) (<= 0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} assume !(~r~0 >= 2 * ~b~0); {4402#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (< main_~r~0 (* main_~b~0 2)) (<= main_~y~0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-28 04:49:16,114 INFO L290 TraceCheckUtils]: 75: Hoare triple {4402#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (< main_~r~0 (* main_~b~0 2)) (<= main_~y~0 main_~r~0) (= main_~q~0 0) (= main_~a~0 2))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {4406#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (< main_~x~0 (* main_~b~0 2)) (= main_~b~0 (* main_~y~0 2)) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~a~0 2) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 04:49:16,115 INFO L290 TraceCheckUtils]: 76: Hoare triple {4406#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (< main_~x~0 (* main_~b~0 2)) (= main_~b~0 (* main_~y~0 2)) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~a~0 2) (<= main_~y~0 main_~x~0))} assume !false; {4406#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (< main_~x~0 (* main_~b~0 2)) (= main_~b~0 (* main_~y~0 2)) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~a~0 2) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 04:49:16,115 INFO L272 TraceCheckUtils]: 77: Hoare triple {4406#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (< main_~x~0 (* main_~b~0 2)) (= main_~b~0 (* main_~y~0 2)) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~a~0 2) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4169#true} is VALID [2022-04-28 04:49:16,115 INFO L290 TraceCheckUtils]: 78: Hoare triple {4169#true} ~cond := #in~cond; {4317#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:49:16,116 INFO L290 TraceCheckUtils]: 79: Hoare triple {4317#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {4321#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:49:16,116 INFO L290 TraceCheckUtils]: 80: Hoare triple {4321#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4321#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:49:16,117 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {4321#(not (= |__VERIFIER_assert_#in~cond| 0))} {4406#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (< main_~x~0 (* main_~b~0 2)) (= main_~b~0 (* main_~y~0 2)) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (= main_~a~0 2) (<= main_~y~0 main_~x~0))} #84#return; {4425#(and (= (* main_~q~0 main_~y~0) (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 04:49:16,118 INFO L272 TraceCheckUtils]: 82: Hoare triple {4425#(and (= (* main_~q~0 main_~y~0) (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4429#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:49:16,118 INFO L290 TraceCheckUtils]: 83: Hoare triple {4429#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4433#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:49:16,119 INFO L290 TraceCheckUtils]: 84: Hoare triple {4433#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4170#false} is VALID [2022-04-28 04:49:16,119 INFO L290 TraceCheckUtils]: 85: Hoare triple {4170#false} assume !false; {4170#false} is VALID [2022-04-28 04:49:16,119 INFO L134 CoverageAnalysis]: Checked inductivity of 220 backedges. 54 proven. 22 refuted. 0 times theorem prover too weak. 144 trivial. 0 not checked. [2022-04-28 04:49:16,120 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:50:10,574 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:50:10,574 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2026313092] [2022-04-28 04:50:10,574 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:50:10,574 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2017989766] [2022-04-28 04:50:10,574 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2017989766] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:50:10,574 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 04:50:10,574 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13] total 13 [2022-04-28 04:50:10,575 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:50:10,575 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [296898095] [2022-04-28 04:50:10,575 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [296898095] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:50:10,575 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:50:10,575 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 04:50:10,575 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [958593175] [2022-04-28 04:50:10,575 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:50:10,575 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) Word has length 86 [2022-04-28 04:50:10,575 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:50:10,576 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-28 04:50:10,624 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:50:10,624 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 04:50:10,624 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:50:10,624 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 04:50:10,625 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=283, Unknown=1, NotChecked=0, Total=380 [2022-04-28 04:50:10,625 INFO L87 Difference]: Start difference. First operand 103 states and 132 transitions. Second operand has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-28 04:50:12,560 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:50:12,560 INFO L93 Difference]: Finished difference Result 147 states and 191 transitions. [2022-04-28 04:50:12,560 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 04:50:12,560 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) Word has length 86 [2022-04-28 04:50:12,561 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:50:12,561 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-28 04:50:12,564 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 114 transitions. [2022-04-28 04:50:12,564 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-28 04:50:12,566 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 114 transitions. [2022-04-28 04:50:12,567 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 114 transitions. [2022-04-28 04:50:12,670 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 114 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:50:12,674 INFO L225 Difference]: With dead ends: 147 [2022-04-28 04:50:12,674 INFO L226 Difference]: Without dead ends: 144 [2022-04-28 04:50:12,674 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 140 GetRequests, 118 SyntacticMatches, 2 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 120 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=109, Invalid=352, Unknown=1, NotChecked=0, Total=462 [2022-04-28 04:50:12,675 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 27 mSDsluCounter, 219 mSDsCounter, 0 mSdLazyCounter, 628 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 263 SdHoareTripleChecker+Invalid, 649 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 628 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-28 04:50:12,675 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [39 Valid, 263 Invalid, 649 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 628 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-28 04:50:12,675 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 144 states. [2022-04-28 04:50:12,830 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 144 to 121. [2022-04-28 04:50:12,830 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:50:12,831 INFO L82 GeneralOperation]: Start isEquivalent. First operand 144 states. Second operand has 121 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 04:50:12,831 INFO L74 IsIncluded]: Start isIncluded. First operand 144 states. Second operand has 121 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 04:50:12,832 INFO L87 Difference]: Start difference. First operand 144 states. Second operand has 121 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 04:50:12,837 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:50:12,837 INFO L93 Difference]: Finished difference Result 144 states and 187 transitions. [2022-04-28 04:50:12,837 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 187 transitions. [2022-04-28 04:50:12,838 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:50:12,838 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:50:12,839 INFO L74 IsIncluded]: Start isIncluded. First operand has 121 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) Second operand 144 states. [2022-04-28 04:50:12,839 INFO L87 Difference]: Start difference. First operand has 121 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) Second operand 144 states. [2022-04-28 04:50:12,845 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:50:12,845 INFO L93 Difference]: Finished difference Result 144 states and 187 transitions. [2022-04-28 04:50:12,845 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 187 transitions. [2022-04-28 04:50:12,845 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:50:12,845 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:50:12,846 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:50:12,846 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:50:12,846 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 121 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 04:50:12,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 121 states to 121 states and 154 transitions. [2022-04-28 04:50:12,850 INFO L78 Accepts]: Start accepts. Automaton has 121 states and 154 transitions. Word has length 86 [2022-04-28 04:50:12,850 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:50:12,851 INFO L495 AbstractCegarLoop]: Abstraction has 121 states and 154 transitions. [2022-04-28 04:50:12,851 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.1666666666666665) internal successors, (26), 11 states have internal predecessors, (26), 7 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-28 04:50:12,851 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 121 states and 154 transitions. [2022-04-28 04:50:13,042 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 154 edges. 154 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:50:13,042 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 154 transitions. [2022-04-28 04:50:13,047 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 94 [2022-04-28 04:50:13,047 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:50:13,047 INFO L195 NwaCegarLoop]: trace histogram [12, 11, 11, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:50:13,063 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-28 04:50:13,248 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:50:13,248 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:50:13,248 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:50:13,248 INFO L85 PathProgramCache]: Analyzing trace with hash -895340852, now seen corresponding path program 3 times [2022-04-28 04:50:13,248 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:50:13,248 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1954590248] [2022-04-28 04:50:13,249 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:50:13,249 INFO L85 PathProgramCache]: Analyzing trace with hash -895340852, now seen corresponding path program 4 times [2022-04-28 04:50:13,249 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:50:13,249 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [83443222] [2022-04-28 04:50:13,249 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:50:13,249 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:50:13,264 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:50:13,264 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [579794211] [2022-04-28 04:50:13,264 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 04:50:13,264 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:50:13,265 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:50:13,265 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:50:13,287 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-28 04:50:13,321 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 04:50:13,321 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:50:13,322 INFO L263 TraceCheckSpWp]: Trace formula consists of 176 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-28 04:50:13,334 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:50:13,335 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:50:13,568 INFO L272 TraceCheckUtils]: 0: Hoare triple {5433#true} call ULTIMATE.init(); {5433#true} is VALID [2022-04-28 04:50:13,568 INFO L290 TraceCheckUtils]: 1: Hoare triple {5433#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3); {5433#true} is VALID [2022-04-28 04:50:13,568 INFO L290 TraceCheckUtils]: 2: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-28 04:50:13,568 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5433#true} {5433#true} #98#return; {5433#true} is VALID [2022-04-28 04:50:13,568 INFO L272 TraceCheckUtils]: 4: Hoare triple {5433#true} call #t~ret6 := main(); {5433#true} is VALID [2022-04-28 04:50:13,568 INFO L290 TraceCheckUtils]: 5: Hoare triple {5433#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {5433#true} is VALID [2022-04-28 04:50:13,568 INFO L272 TraceCheckUtils]: 6: Hoare triple {5433#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {5433#true} is VALID [2022-04-28 04:50:13,568 INFO L290 TraceCheckUtils]: 7: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-28 04:50:13,568 INFO L290 TraceCheckUtils]: 8: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-28 04:50:13,568 INFO L290 TraceCheckUtils]: 9: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-28 04:50:13,568 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5433#true} {5433#true} #78#return; {5433#true} is VALID [2022-04-28 04:50:13,568 INFO L290 TraceCheckUtils]: 11: Hoare triple {5433#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5433#true} is VALID [2022-04-28 04:50:13,569 INFO L272 TraceCheckUtils]: 12: Hoare triple {5433#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {5433#true} is VALID [2022-04-28 04:50:13,569 INFO L290 TraceCheckUtils]: 13: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-28 04:50:13,569 INFO L290 TraceCheckUtils]: 14: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-28 04:50:13,569 INFO L290 TraceCheckUtils]: 15: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-28 04:50:13,569 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5433#true} {5433#true} #80#return; {5433#true} is VALID [2022-04-28 04:50:13,569 INFO L272 TraceCheckUtils]: 17: Hoare triple {5433#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5433#true} is VALID [2022-04-28 04:50:13,569 INFO L290 TraceCheckUtils]: 18: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-28 04:50:13,569 INFO L290 TraceCheckUtils]: 19: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-28 04:50:13,569 INFO L290 TraceCheckUtils]: 20: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-28 04:50:13,569 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5433#true} {5433#true} #82#return; {5433#true} is VALID [2022-04-28 04:50:13,569 INFO L290 TraceCheckUtils]: 22: Hoare triple {5433#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {5433#true} is VALID [2022-04-28 04:50:13,569 INFO L290 TraceCheckUtils]: 23: Hoare triple {5433#true} assume !false; {5433#true} is VALID [2022-04-28 04:50:13,569 INFO L272 TraceCheckUtils]: 24: Hoare triple {5433#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {5433#true} is VALID [2022-04-28 04:50:13,570 INFO L290 TraceCheckUtils]: 25: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-28 04:50:13,570 INFO L290 TraceCheckUtils]: 26: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-28 04:50:13,570 INFO L290 TraceCheckUtils]: 27: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-28 04:50:13,570 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5433#true} {5433#true} #84#return; {5433#true} is VALID [2022-04-28 04:50:13,570 INFO L272 TraceCheckUtils]: 29: Hoare triple {5433#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5433#true} is VALID [2022-04-28 04:50:13,570 INFO L290 TraceCheckUtils]: 30: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-28 04:50:13,570 INFO L290 TraceCheckUtils]: 31: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-28 04:50:13,570 INFO L290 TraceCheckUtils]: 32: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-28 04:50:13,570 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {5433#true} {5433#true} #86#return; {5433#true} is VALID [2022-04-28 04:50:13,570 INFO L290 TraceCheckUtils]: 34: Hoare triple {5433#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {5540#(<= main_~b~0 main_~y~0)} is VALID [2022-04-28 04:50:13,571 INFO L290 TraceCheckUtils]: 35: Hoare triple {5540#(<= main_~b~0 main_~y~0)} assume !false; {5540#(<= main_~b~0 main_~y~0)} is VALID [2022-04-28 04:50:13,571 INFO L272 TraceCheckUtils]: 36: Hoare triple {5540#(<= main_~b~0 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {5433#true} is VALID [2022-04-28 04:50:13,571 INFO L290 TraceCheckUtils]: 37: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-28 04:50:13,571 INFO L290 TraceCheckUtils]: 38: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-28 04:50:13,571 INFO L290 TraceCheckUtils]: 39: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-28 04:50:13,572 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {5433#true} {5540#(<= main_~b~0 main_~y~0)} #88#return; {5540#(<= main_~b~0 main_~y~0)} is VALID [2022-04-28 04:50:13,572 INFO L272 TraceCheckUtils]: 41: Hoare triple {5540#(<= main_~b~0 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5433#true} is VALID [2022-04-28 04:50:13,572 INFO L290 TraceCheckUtils]: 42: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-28 04:50:13,572 INFO L290 TraceCheckUtils]: 43: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-28 04:50:13,572 INFO L290 TraceCheckUtils]: 44: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-28 04:50:13,572 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {5433#true} {5540#(<= main_~b~0 main_~y~0)} #90#return; {5540#(<= main_~b~0 main_~y~0)} is VALID [2022-04-28 04:50:13,572 INFO L272 TraceCheckUtils]: 46: Hoare triple {5540#(<= main_~b~0 main_~y~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {5433#true} is VALID [2022-04-28 04:50:13,572 INFO L290 TraceCheckUtils]: 47: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-28 04:50:13,572 INFO L290 TraceCheckUtils]: 48: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-28 04:50:13,573 INFO L290 TraceCheckUtils]: 49: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-28 04:50:13,573 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5433#true} {5540#(<= main_~b~0 main_~y~0)} #92#return; {5540#(<= main_~b~0 main_~y~0)} is VALID [2022-04-28 04:50:13,573 INFO L290 TraceCheckUtils]: 51: Hoare triple {5540#(<= main_~b~0 main_~y~0)} assume !(~r~0 >= 2 * ~b~0); {5592#(and (not (<= (* main_~b~0 2) main_~r~0)) (<= main_~b~0 main_~y~0))} is VALID [2022-04-28 04:50:13,574 INFO L290 TraceCheckUtils]: 52: Hoare triple {5592#(and (not (<= (* main_~b~0 2) main_~r~0)) (<= main_~b~0 main_~y~0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {5596#(< main_~r~0 main_~y~0)} is VALID [2022-04-28 04:50:13,574 INFO L290 TraceCheckUtils]: 53: Hoare triple {5596#(< main_~r~0 main_~y~0)} assume !false; {5596#(< main_~r~0 main_~y~0)} is VALID [2022-04-28 04:50:13,574 INFO L272 TraceCheckUtils]: 54: Hoare triple {5596#(< main_~r~0 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {5433#true} is VALID [2022-04-28 04:50:13,574 INFO L290 TraceCheckUtils]: 55: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-28 04:50:13,574 INFO L290 TraceCheckUtils]: 56: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-28 04:50:13,574 INFO L290 TraceCheckUtils]: 57: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-28 04:50:13,575 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {5433#true} {5596#(< main_~r~0 main_~y~0)} #84#return; {5596#(< main_~r~0 main_~y~0)} is VALID [2022-04-28 04:50:13,575 INFO L272 TraceCheckUtils]: 59: Hoare triple {5596#(< main_~r~0 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5433#true} is VALID [2022-04-28 04:50:13,575 INFO L290 TraceCheckUtils]: 60: Hoare triple {5433#true} ~cond := #in~cond; {5433#true} is VALID [2022-04-28 04:50:13,575 INFO L290 TraceCheckUtils]: 61: Hoare triple {5433#true} assume !(0 == ~cond); {5433#true} is VALID [2022-04-28 04:50:13,575 INFO L290 TraceCheckUtils]: 62: Hoare triple {5433#true} assume true; {5433#true} is VALID [2022-04-28 04:50:13,576 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {5433#true} {5596#(< main_~r~0 main_~y~0)} #86#return; {5596#(< main_~r~0 main_~y~0)} is VALID [2022-04-28 04:50:13,576 INFO L290 TraceCheckUtils]: 64: Hoare triple {5596#(< main_~r~0 main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {5434#false} is VALID [2022-04-28 04:50:13,576 INFO L290 TraceCheckUtils]: 65: Hoare triple {5434#false} assume !false; {5434#false} is VALID [2022-04-28 04:50:13,577 INFO L272 TraceCheckUtils]: 66: Hoare triple {5434#false} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {5434#false} is VALID [2022-04-28 04:50:13,577 INFO L290 TraceCheckUtils]: 67: Hoare triple {5434#false} ~cond := #in~cond; {5434#false} is VALID [2022-04-28 04:50:13,577 INFO L290 TraceCheckUtils]: 68: Hoare triple {5434#false} assume !(0 == ~cond); {5434#false} is VALID [2022-04-28 04:50:13,577 INFO L290 TraceCheckUtils]: 69: Hoare triple {5434#false} assume true; {5434#false} is VALID [2022-04-28 04:50:13,577 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {5434#false} {5434#false} #88#return; {5434#false} is VALID [2022-04-28 04:50:13,577 INFO L272 TraceCheckUtils]: 71: Hoare triple {5434#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5434#false} is VALID [2022-04-28 04:50:13,577 INFO L290 TraceCheckUtils]: 72: Hoare triple {5434#false} ~cond := #in~cond; {5434#false} is VALID [2022-04-28 04:50:13,577 INFO L290 TraceCheckUtils]: 73: Hoare triple {5434#false} assume !(0 == ~cond); {5434#false} is VALID [2022-04-28 04:50:13,577 INFO L290 TraceCheckUtils]: 74: Hoare triple {5434#false} assume true; {5434#false} is VALID [2022-04-28 04:50:13,577 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {5434#false} {5434#false} #90#return; {5434#false} is VALID [2022-04-28 04:50:13,577 INFO L272 TraceCheckUtils]: 76: Hoare triple {5434#false} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {5434#false} is VALID [2022-04-28 04:50:13,578 INFO L290 TraceCheckUtils]: 77: Hoare triple {5434#false} ~cond := #in~cond; {5434#false} is VALID [2022-04-28 04:50:13,578 INFO L290 TraceCheckUtils]: 78: Hoare triple {5434#false} assume !(0 == ~cond); {5434#false} is VALID [2022-04-28 04:50:13,578 INFO L290 TraceCheckUtils]: 79: Hoare triple {5434#false} assume true; {5434#false} is VALID [2022-04-28 04:50:13,578 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {5434#false} {5434#false} #92#return; {5434#false} is VALID [2022-04-28 04:50:13,578 INFO L290 TraceCheckUtils]: 81: Hoare triple {5434#false} assume !(~r~0 >= 2 * ~b~0); {5434#false} is VALID [2022-04-28 04:50:13,578 INFO L290 TraceCheckUtils]: 82: Hoare triple {5434#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {5434#false} is VALID [2022-04-28 04:50:13,578 INFO L290 TraceCheckUtils]: 83: Hoare triple {5434#false} assume !false; {5434#false} is VALID [2022-04-28 04:50:13,578 INFO L272 TraceCheckUtils]: 84: Hoare triple {5434#false} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {5434#false} is VALID [2022-04-28 04:50:13,578 INFO L290 TraceCheckUtils]: 85: Hoare triple {5434#false} ~cond := #in~cond; {5434#false} is VALID [2022-04-28 04:50:13,578 INFO L290 TraceCheckUtils]: 86: Hoare triple {5434#false} assume !(0 == ~cond); {5434#false} is VALID [2022-04-28 04:50:13,578 INFO L290 TraceCheckUtils]: 87: Hoare triple {5434#false} assume true; {5434#false} is VALID [2022-04-28 04:50:13,578 INFO L284 TraceCheckUtils]: 88: Hoare quadruple {5434#false} {5434#false} #84#return; {5434#false} is VALID [2022-04-28 04:50:13,579 INFO L272 TraceCheckUtils]: 89: Hoare triple {5434#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5434#false} is VALID [2022-04-28 04:50:13,579 INFO L290 TraceCheckUtils]: 90: Hoare triple {5434#false} ~cond := #in~cond; {5434#false} is VALID [2022-04-28 04:50:13,579 INFO L290 TraceCheckUtils]: 91: Hoare triple {5434#false} assume 0 == ~cond; {5434#false} is VALID [2022-04-28 04:50:13,579 INFO L290 TraceCheckUtils]: 92: Hoare triple {5434#false} assume !false; {5434#false} is VALID [2022-04-28 04:50:13,579 INFO L134 CoverageAnalysis]: Checked inductivity of 270 backedges. 142 proven. 0 refuted. 0 times theorem prover too weak. 128 trivial. 0 not checked. [2022-04-28 04:50:13,579 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 04:50:13,579 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:50:13,579 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [83443222] [2022-04-28 04:50:13,580 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:50:13,580 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [579794211] [2022-04-28 04:50:13,580 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [579794211] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:50:13,580 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:50:13,580 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 04:50:13,580 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:50:13,580 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1954590248] [2022-04-28 04:50:13,580 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1954590248] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:50:13,580 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:50:13,580 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 04:50:13,581 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [60525476] [2022-04-28 04:50:13,581 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:50:13,581 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 4 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) Word has length 93 [2022-04-28 04:50:13,581 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:50:13,582 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 4 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-28 04:50:13,623 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:50:13,623 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 04:50:13,623 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:50:13,624 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 04:50:13,624 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 04:50:13,624 INFO L87 Difference]: Start difference. First operand 121 states and 154 transitions. Second operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 4 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-28 04:50:14,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:50:14,047 INFO L93 Difference]: Finished difference Result 185 states and 240 transitions. [2022-04-28 04:50:14,048 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 04:50:14,048 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 4 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) Word has length 93 [2022-04-28 04:50:14,048 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:50:14,048 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 4 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-28 04:50:14,050 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 90 transitions. [2022-04-28 04:50:14,050 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 4 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-28 04:50:14,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 90 transitions. [2022-04-28 04:50:14,052 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 90 transitions. [2022-04-28 04:50:14,117 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:50:14,120 INFO L225 Difference]: With dead ends: 185 [2022-04-28 04:50:14,120 INFO L226 Difference]: Without dead ends: 125 [2022-04-28 04:50:14,121 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 90 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-28 04:50:14,121 INFO L413 NwaCegarLoop]: 49 mSDtfsCounter, 4 mSDsluCounter, 77 mSDsCounter, 0 mSdLazyCounter, 76 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 126 SdHoareTripleChecker+Invalid, 80 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 76 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 04:50:14,122 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [5 Valid, 126 Invalid, 80 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 76 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 04:50:14,122 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 125 states. [2022-04-28 04:50:14,278 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 125 to 120. [2022-04-28 04:50:14,278 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:50:14,278 INFO L82 GeneralOperation]: Start isEquivalent. First operand 125 states. Second operand has 120 states, 68 states have (on average 1.1176470588235294) internal successors, (76), 69 states have internal predecessors, (76), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 04:50:14,279 INFO L74 IsIncluded]: Start isIncluded. First operand 125 states. Second operand has 120 states, 68 states have (on average 1.1176470588235294) internal successors, (76), 69 states have internal predecessors, (76), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 04:50:14,279 INFO L87 Difference]: Start difference. First operand 125 states. Second operand has 120 states, 68 states have (on average 1.1176470588235294) internal successors, (76), 69 states have internal predecessors, (76), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 04:50:14,284 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:50:14,284 INFO L93 Difference]: Finished difference Result 125 states and 159 transitions. [2022-04-28 04:50:14,284 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 159 transitions. [2022-04-28 04:50:14,284 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:50:14,284 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:50:14,285 INFO L74 IsIncluded]: Start isIncluded. First operand has 120 states, 68 states have (on average 1.1176470588235294) internal successors, (76), 69 states have internal predecessors, (76), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 125 states. [2022-04-28 04:50:14,285 INFO L87 Difference]: Start difference. First operand has 120 states, 68 states have (on average 1.1176470588235294) internal successors, (76), 69 states have internal predecessors, (76), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 125 states. [2022-04-28 04:50:14,289 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:50:14,289 INFO L93 Difference]: Finished difference Result 125 states and 159 transitions. [2022-04-28 04:50:14,289 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 159 transitions. [2022-04-28 04:50:14,290 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:50:14,290 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:50:14,290 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:50:14,290 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:50:14,290 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 120 states, 68 states have (on average 1.1176470588235294) internal successors, (76), 69 states have internal predecessors, (76), 39 states have call successors, (39), 13 states have call predecessors, (39), 12 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-28 04:50:14,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 120 states to 120 states and 152 transitions. [2022-04-28 04:50:14,295 INFO L78 Accepts]: Start accepts. Automaton has 120 states and 152 transitions. Word has length 93 [2022-04-28 04:50:14,295 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:50:14,295 INFO L495 AbstractCegarLoop]: Abstraction has 120 states and 152 transitions. [2022-04-28 04:50:14,295 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 4 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-28 04:50:14,296 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 120 states and 152 transitions. [2022-04-28 04:50:14,519 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 152 edges. 152 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:50:14,519 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 152 transitions. [2022-04-28 04:50:14,520 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2022-04-28 04:50:14,520 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:50:14,520 INFO L195 NwaCegarLoop]: trace histogram [15, 14, 14, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:50:14,544 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-28 04:50:14,720 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-28 04:50:14,721 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:50:14,721 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:50:14,721 INFO L85 PathProgramCache]: Analyzing trace with hash -39671046, now seen corresponding path program 3 times [2022-04-28 04:50:14,721 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:50:14,721 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [230729019] [2022-04-28 04:50:14,721 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:50:14,722 INFO L85 PathProgramCache]: Analyzing trace with hash -39671046, now seen corresponding path program 4 times [2022-04-28 04:50:14,722 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:50:14,722 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [862736553] [2022-04-28 04:50:14,722 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:50:14,722 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:50:14,743 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:50:14,743 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [729595292] [2022-04-28 04:50:14,743 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 04:50:14,743 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:50:14,744 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:50:14,749 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:50:14,773 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-28 04:50:14,809 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 04:50:14,810 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:50:14,811 INFO L263 TraceCheckSpWp]: Trace formula consists of 203 conjuncts, 29 conjunts are in the unsatisfiable core [2022-04-28 04:50:14,831 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:50:14,837 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:51:17,936 INFO L272 TraceCheckUtils]: 0: Hoare triple {6579#true} call ULTIMATE.init(); {6579#true} is VALID [2022-04-28 04:51:17,936 INFO L290 TraceCheckUtils]: 1: Hoare triple {6579#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3); {6579#true} is VALID [2022-04-28 04:51:17,936 INFO L290 TraceCheckUtils]: 2: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,936 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6579#true} {6579#true} #98#return; {6579#true} is VALID [2022-04-28 04:51:17,936 INFO L272 TraceCheckUtils]: 4: Hoare triple {6579#true} call #t~ret6 := main(); {6579#true} is VALID [2022-04-28 04:51:17,936 INFO L290 TraceCheckUtils]: 5: Hoare triple {6579#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {6579#true} is VALID [2022-04-28 04:51:17,937 INFO L272 TraceCheckUtils]: 6: Hoare triple {6579#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,937 INFO L290 TraceCheckUtils]: 7: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-28 04:51:17,937 INFO L290 TraceCheckUtils]: 8: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-28 04:51:17,937 INFO L290 TraceCheckUtils]: 9: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,937 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6579#true} {6579#true} #78#return; {6579#true} is VALID [2022-04-28 04:51:17,937 INFO L290 TraceCheckUtils]: 11: Hoare triple {6579#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6579#true} is VALID [2022-04-28 04:51:17,937 INFO L272 TraceCheckUtils]: 12: Hoare triple {6579#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,937 INFO L290 TraceCheckUtils]: 13: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-28 04:51:17,937 INFO L290 TraceCheckUtils]: 14: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-28 04:51:17,937 INFO L290 TraceCheckUtils]: 15: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,937 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6579#true} {6579#true} #80#return; {6579#true} is VALID [2022-04-28 04:51:17,937 INFO L272 TraceCheckUtils]: 17: Hoare triple {6579#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,937 INFO L290 TraceCheckUtils]: 18: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-28 04:51:17,937 INFO L290 TraceCheckUtils]: 19: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-28 04:51:17,937 INFO L290 TraceCheckUtils]: 20: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,937 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6579#true} {6579#true} #82#return; {6579#true} is VALID [2022-04-28 04:51:17,938 INFO L290 TraceCheckUtils]: 22: Hoare triple {6579#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-28 04:51:17,938 INFO L290 TraceCheckUtils]: 23: Hoare triple {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !false; {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-28 04:51:17,938 INFO L272 TraceCheckUtils]: 24: Hoare triple {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,938 INFO L290 TraceCheckUtils]: 25: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-28 04:51:17,938 INFO L290 TraceCheckUtils]: 26: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-28 04:51:17,938 INFO L290 TraceCheckUtils]: 27: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,939 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6579#true} {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #84#return; {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-28 04:51:17,939 INFO L272 TraceCheckUtils]: 29: Hoare triple {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,939 INFO L290 TraceCheckUtils]: 30: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-28 04:51:17,939 INFO L290 TraceCheckUtils]: 31: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-28 04:51:17,939 INFO L290 TraceCheckUtils]: 32: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,940 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6579#true} {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #86#return; {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-28 04:51:17,940 INFO L290 TraceCheckUtils]: 34: Hoare triple {6650#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:51:17,940 INFO L290 TraceCheckUtils]: 35: Hoare triple {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !false; {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:51:17,940 INFO L272 TraceCheckUtils]: 36: Hoare triple {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,940 INFO L290 TraceCheckUtils]: 37: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-28 04:51:17,940 INFO L290 TraceCheckUtils]: 38: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-28 04:51:17,941 INFO L290 TraceCheckUtils]: 39: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,941 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {6579#true} {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #88#return; {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:51:17,941 INFO L272 TraceCheckUtils]: 41: Hoare triple {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,941 INFO L290 TraceCheckUtils]: 42: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-28 04:51:17,941 INFO L290 TraceCheckUtils]: 43: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-28 04:51:17,941 INFO L290 TraceCheckUtils]: 44: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,944 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {6579#true} {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #90#return; {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:51:17,944 INFO L272 TraceCheckUtils]: 46: Hoare triple {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,944 INFO L290 TraceCheckUtils]: 47: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-28 04:51:17,944 INFO L290 TraceCheckUtils]: 48: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-28 04:51:17,944 INFO L290 TraceCheckUtils]: 49: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,945 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {6579#true} {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #92#return; {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:51:17,945 INFO L290 TraceCheckUtils]: 51: Hoare triple {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:51:17,945 INFO L272 TraceCheckUtils]: 52: Hoare triple {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,945 INFO L290 TraceCheckUtils]: 53: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-28 04:51:17,945 INFO L290 TraceCheckUtils]: 54: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-28 04:51:17,945 INFO L290 TraceCheckUtils]: 55: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,946 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {6579#true} {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #94#return; {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 04:51:17,947 INFO L290 TraceCheckUtils]: 57: Hoare triple {6687#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {6757#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-28 04:51:17,947 INFO L290 TraceCheckUtils]: 58: Hoare triple {6757#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} assume !false; {6757#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-28 04:51:17,947 INFO L272 TraceCheckUtils]: 59: Hoare triple {6757#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,947 INFO L290 TraceCheckUtils]: 60: Hoare triple {6579#true} ~cond := #in~cond; {6767#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:51:17,948 INFO L290 TraceCheckUtils]: 61: Hoare triple {6767#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6771#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:51:17,948 INFO L290 TraceCheckUtils]: 62: Hoare triple {6771#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6771#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:51:17,949 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {6771#(not (= |__VERIFIER_assert_#in~cond| 0))} {6757#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} #88#return; {6778#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-28 04:51:17,949 INFO L272 TraceCheckUtils]: 64: Hoare triple {6778#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,949 INFO L290 TraceCheckUtils]: 65: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-28 04:51:17,949 INFO L290 TraceCheckUtils]: 66: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-28 04:51:17,949 INFO L290 TraceCheckUtils]: 67: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,949 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {6579#true} {6778#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #90#return; {6778#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-28 04:51:17,950 INFO L272 TraceCheckUtils]: 69: Hoare triple {6778#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,950 INFO L290 TraceCheckUtils]: 70: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-28 04:51:17,950 INFO L290 TraceCheckUtils]: 71: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-28 04:51:17,950 INFO L290 TraceCheckUtils]: 72: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,950 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {6579#true} {6778#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #92#return; {6778#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-28 04:51:17,951 INFO L290 TraceCheckUtils]: 74: Hoare triple {6778#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} assume !!(~r~0 >= 2 * ~b~0); {6812#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (* main_~b~0 2) main_~r~0) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-28 04:51:17,951 INFO L272 TraceCheckUtils]: 75: Hoare triple {6812#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (* main_~b~0 2) main_~r~0) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,951 INFO L290 TraceCheckUtils]: 76: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-28 04:51:17,951 INFO L290 TraceCheckUtils]: 77: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-28 04:51:17,951 INFO L290 TraceCheckUtils]: 78: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,951 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {6579#true} {6812#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (* main_~b~0 2) main_~r~0) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #94#return; {6812#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (* main_~b~0 2) main_~r~0) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-28 04:51:17,955 INFO L290 TraceCheckUtils]: 80: Hoare triple {6812#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (* main_~b~0 2) main_~r~0) (<= (div main_~a~0 2) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-28 04:51:17,955 INFO L290 TraceCheckUtils]: 81: Hoare triple {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} assume !false; {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-28 04:51:17,955 INFO L272 TraceCheckUtils]: 82: Hoare triple {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,955 INFO L290 TraceCheckUtils]: 83: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-28 04:51:17,955 INFO L290 TraceCheckUtils]: 84: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-28 04:51:17,955 INFO L290 TraceCheckUtils]: 85: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,956 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {6579#true} {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} #88#return; {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-28 04:51:17,956 INFO L272 TraceCheckUtils]: 87: Hoare triple {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,956 INFO L290 TraceCheckUtils]: 88: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-28 04:51:17,956 INFO L290 TraceCheckUtils]: 89: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-28 04:51:17,956 INFO L290 TraceCheckUtils]: 90: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,957 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {6579#true} {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} #90#return; {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-28 04:51:17,957 INFO L272 TraceCheckUtils]: 92: Hoare triple {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,957 INFO L290 TraceCheckUtils]: 93: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-28 04:51:17,957 INFO L290 TraceCheckUtils]: 94: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-28 04:51:17,957 INFO L290 TraceCheckUtils]: 95: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,958 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {6579#true} {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} #92#return; {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-28 04:51:17,958 INFO L290 TraceCheckUtils]: 97: Hoare triple {6831#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (div (* (- 1) main_~a~0) (- 2)) 2) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} assume !(~r~0 >= 2 * ~b~0); {6883#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (* main_~y~0 2) (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) (< main_~r~0 (* main_~b~0 2)) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~b~0) (= main_~q~0 0))} is VALID [2022-04-28 04:51:17,961 INFO L290 TraceCheckUtils]: 98: Hoare triple {6883#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (* main_~y~0 2) (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) (< main_~r~0 (* main_~b~0 2)) (<= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~r~0) (= (* 2 (* (div (* (- 1) main_~a~0) (- 2)) main_~y~0)) main_~b~0) (= main_~q~0 0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {6887#(and (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (<= (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~x~0) (= (mod main_~q~0 2) 0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) 4)) (= main_~r~0 (+ main_~x~0 (* (- 2) (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))))))} is VALID [2022-04-28 04:51:17,961 INFO L290 TraceCheckUtils]: 99: Hoare triple {6887#(and (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (<= (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~x~0) (= (mod main_~q~0 2) 0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) 4)) (= main_~r~0 (+ main_~x~0 (* (- 2) (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))))))} assume !false; {6887#(and (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (<= (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~x~0) (= (mod main_~q~0 2) 0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) 4)) (= main_~r~0 (+ main_~x~0 (* (- 2) (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))))))} is VALID [2022-04-28 04:51:17,962 INFO L272 TraceCheckUtils]: 100: Hoare triple {6887#(and (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (<= (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~x~0) (= (mod main_~q~0 2) 0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) 4)) (= main_~r~0 (+ main_~x~0 (* (- 2) (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6579#true} is VALID [2022-04-28 04:51:17,962 INFO L290 TraceCheckUtils]: 101: Hoare triple {6579#true} ~cond := #in~cond; {6579#true} is VALID [2022-04-28 04:51:17,962 INFO L290 TraceCheckUtils]: 102: Hoare triple {6579#true} assume !(0 == ~cond); {6579#true} is VALID [2022-04-28 04:51:17,962 INFO L290 TraceCheckUtils]: 103: Hoare triple {6579#true} assume true; {6579#true} is VALID [2022-04-28 04:51:17,962 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {6579#true} {6887#(and (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (<= (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~x~0) (= (mod main_~q~0 2) 0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) 4)) (= main_~r~0 (+ main_~x~0 (* (- 2) (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))))))} #84#return; {6887#(and (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (<= (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~x~0) (= (mod main_~q~0 2) 0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) 4)) (= main_~r~0 (+ main_~x~0 (* (- 2) (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))))))} is VALID [2022-04-28 04:51:17,970 INFO L272 TraceCheckUtils]: 105: Hoare triple {6887#(and (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (<= (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~x~0) (= (mod main_~q~0 2) 0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) 4)) (= main_~r~0 (+ main_~x~0 (* (- 2) (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6909#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:51:17,970 INFO L290 TraceCheckUtils]: 106: Hoare triple {6909#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6913#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:51:17,971 INFO L290 TraceCheckUtils]: 107: Hoare triple {6913#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6580#false} is VALID [2022-04-28 04:51:17,971 INFO L290 TraceCheckUtils]: 108: Hoare triple {6580#false} assume !false; {6580#false} is VALID [2022-04-28 04:51:17,971 INFO L134 CoverageAnalysis]: Checked inductivity of 424 backedges. 45 proven. 42 refuted. 0 times theorem prover too weak. 337 trivial. 0 not checked. [2022-04-28 04:51:17,971 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:51:27,479 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 04:52:13,431 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:52:13,432 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [862736553] [2022-04-28 04:52:13,432 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:52:13,432 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [729595292] [2022-04-28 04:52:13,432 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [729595292] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:52:13,432 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 04:52:13,432 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2022-04-28 04:52:13,432 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:52:13,432 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [230729019] [2022-04-28 04:52:13,432 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [230729019] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:52:13,432 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:52:13,432 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 04:52:13,432 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [267925751] [2022-04-28 04:52:13,432 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:52:13,433 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.0714285714285716) internal successors, (29), 12 states have internal predecessors, (29), 8 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) Word has length 109 [2022-04-28 04:52:13,433 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:52:13,433 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 2.0714285714285716) internal successors, (29), 12 states have internal predecessors, (29), 8 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-28 04:52:13,506 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:52:13,506 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 04:52:13,506 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:52:13,507 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 04:52:13,507 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=112, Invalid=394, Unknown=0, NotChecked=0, Total=506 [2022-04-28 04:52:13,507 INFO L87 Difference]: Start difference. First operand 120 states and 152 transitions. Second operand has 14 states, 14 states have (on average 2.0714285714285716) internal successors, (29), 12 states have internal predecessors, (29), 8 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-28 04:52:18,540 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:52:18,540 INFO L93 Difference]: Finished difference Result 164 states and 211 transitions. [2022-04-28 04:52:18,540 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 04:52:18,540 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.0714285714285716) internal successors, (29), 12 states have internal predecessors, (29), 8 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) Word has length 109 [2022-04-28 04:52:18,541 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:52:18,541 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.0714285714285716) internal successors, (29), 12 states have internal predecessors, (29), 8 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-28 04:52:18,543 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 125 transitions. [2022-04-28 04:52:18,544 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.0714285714285716) internal successors, (29), 12 states have internal predecessors, (29), 8 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-28 04:52:18,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 125 transitions. [2022-04-28 04:52:18,546 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 125 transitions. [2022-04-28 04:52:18,703 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 125 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:52:18,707 INFO L225 Difference]: With dead ends: 164 [2022-04-28 04:52:18,707 INFO L226 Difference]: Without dead ends: 161 [2022-04-28 04:52:18,707 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 186 GetRequests, 162 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 163 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=125, Invalid=475, Unknown=0, NotChecked=0, Total=600 [2022-04-28 04:52:18,708 INFO L413 NwaCegarLoop]: 49 mSDtfsCounter, 29 mSDsluCounter, 186 mSDsCounter, 0 mSdLazyCounter, 612 mSolverCounterSat, 37 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 40 SdHoareTripleChecker+Valid, 235 SdHoareTripleChecker+Invalid, 649 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 37 IncrementalHoareTripleChecker+Valid, 612 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.3s IncrementalHoareTripleChecker+Time [2022-04-28 04:52:18,708 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [40 Valid, 235 Invalid, 649 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [37 Valid, 612 Invalid, 0 Unknown, 0 Unchecked, 2.3s Time] [2022-04-28 04:52:18,708 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 161 states. [2022-04-28 04:52:18,968 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 161 to 156. [2022-04-28 04:52:18,968 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:52:18,968 INFO L82 GeneralOperation]: Start isEquivalent. First operand 161 states. Second operand has 156 states, 88 states have (on average 1.125) internal successors, (99), 89 states have internal predecessors, (99), 52 states have call successors, (52), 16 states have call predecessors, (52), 15 states have return successors, (50), 50 states have call predecessors, (50), 50 states have call successors, (50) [2022-04-28 04:52:18,969 INFO L74 IsIncluded]: Start isIncluded. First operand 161 states. Second operand has 156 states, 88 states have (on average 1.125) internal successors, (99), 89 states have internal predecessors, (99), 52 states have call successors, (52), 16 states have call predecessors, (52), 15 states have return successors, (50), 50 states have call predecessors, (50), 50 states have call successors, (50) [2022-04-28 04:52:18,969 INFO L87 Difference]: Start difference. First operand 161 states. Second operand has 156 states, 88 states have (on average 1.125) internal successors, (99), 89 states have internal predecessors, (99), 52 states have call successors, (52), 16 states have call predecessors, (52), 15 states have return successors, (50), 50 states have call predecessors, (50), 50 states have call successors, (50) [2022-04-28 04:52:18,974 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:52:18,974 INFO L93 Difference]: Finished difference Result 161 states and 207 transitions. [2022-04-28 04:52:18,974 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 207 transitions. [2022-04-28 04:52:18,974 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:52:18,975 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:52:18,975 INFO L74 IsIncluded]: Start isIncluded. First operand has 156 states, 88 states have (on average 1.125) internal successors, (99), 89 states have internal predecessors, (99), 52 states have call successors, (52), 16 states have call predecessors, (52), 15 states have return successors, (50), 50 states have call predecessors, (50), 50 states have call successors, (50) Second operand 161 states. [2022-04-28 04:52:18,975 INFO L87 Difference]: Start difference. First operand has 156 states, 88 states have (on average 1.125) internal successors, (99), 89 states have internal predecessors, (99), 52 states have call successors, (52), 16 states have call predecessors, (52), 15 states have return successors, (50), 50 states have call predecessors, (50), 50 states have call successors, (50) Second operand 161 states. [2022-04-28 04:52:18,980 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:52:18,980 INFO L93 Difference]: Finished difference Result 161 states and 207 transitions. [2022-04-28 04:52:18,980 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 207 transitions. [2022-04-28 04:52:18,981 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:52:18,981 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:52:18,981 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:52:18,981 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:52:18,981 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 156 states, 88 states have (on average 1.125) internal successors, (99), 89 states have internal predecessors, (99), 52 states have call successors, (52), 16 states have call predecessors, (52), 15 states have return successors, (50), 50 states have call predecessors, (50), 50 states have call successors, (50) [2022-04-28 04:52:18,986 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 156 states to 156 states and 201 transitions. [2022-04-28 04:52:18,986 INFO L78 Accepts]: Start accepts. Automaton has 156 states and 201 transitions. Word has length 109 [2022-04-28 04:52:18,986 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:52:18,986 INFO L495 AbstractCegarLoop]: Abstraction has 156 states and 201 transitions. [2022-04-28 04:52:18,986 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 2.0714285714285716) internal successors, (29), 12 states have internal predecessors, (29), 8 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-28 04:52:18,986 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 156 states and 201 transitions. [2022-04-28 04:52:19,257 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 201 edges. 201 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:52:19,258 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 201 transitions. [2022-04-28 04:52:19,258 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 117 [2022-04-28 04:52:19,258 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:52:19,259 INFO L195 NwaCegarLoop]: trace histogram [16, 15, 15, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:52:19,278 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-28 04:52:19,471 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-28 04:52:19,471 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:52:19,472 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:52:19,472 INFO L85 PathProgramCache]: Analyzing trace with hash 800180238, now seen corresponding path program 5 times [2022-04-28 04:52:19,472 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:52:19,472 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [655695328] [2022-04-28 04:52:19,472 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:52:19,472 INFO L85 PathProgramCache]: Analyzing trace with hash 800180238, now seen corresponding path program 6 times [2022-04-28 04:52:19,472 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:52:19,472 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1682434087] [2022-04-28 04:52:19,472 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:52:19,473 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:52:19,487 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:52:19,487 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [969664670] [2022-04-28 04:52:19,487 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 04:52:19,487 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:52:19,487 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:52:19,488 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:52:19,509 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-28 04:52:19,565 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 04:52:19,565 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:52:19,567 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 04:52:19,596 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:52:19,598 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:52:19,875 INFO L272 TraceCheckUtils]: 0: Hoare triple {8122#true} call ULTIMATE.init(); {8122#true} is VALID [2022-04-28 04:52:19,875 INFO L290 TraceCheckUtils]: 1: Hoare triple {8122#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3); {8122#true} is VALID [2022-04-28 04:52:19,875 INFO L290 TraceCheckUtils]: 2: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,875 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8122#true} {8122#true} #98#return; {8122#true} is VALID [2022-04-28 04:52:19,875 INFO L272 TraceCheckUtils]: 4: Hoare triple {8122#true} call #t~ret6 := main(); {8122#true} is VALID [2022-04-28 04:52:19,875 INFO L290 TraceCheckUtils]: 5: Hoare triple {8122#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8122#true} is VALID [2022-04-28 04:52:19,875 INFO L272 TraceCheckUtils]: 6: Hoare triple {8122#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L290 TraceCheckUtils]: 7: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L290 TraceCheckUtils]: 8: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L290 TraceCheckUtils]: 9: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8122#true} {8122#true} #78#return; {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L290 TraceCheckUtils]: 11: Hoare triple {8122#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L272 TraceCheckUtils]: 12: Hoare triple {8122#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L290 TraceCheckUtils]: 13: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L290 TraceCheckUtils]: 14: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L290 TraceCheckUtils]: 15: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8122#true} {8122#true} #80#return; {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L272 TraceCheckUtils]: 17: Hoare triple {8122#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L290 TraceCheckUtils]: 18: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L290 TraceCheckUtils]: 19: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L290 TraceCheckUtils]: 20: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8122#true} {8122#true} #82#return; {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L290 TraceCheckUtils]: 22: Hoare triple {8122#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {8122#true} is VALID [2022-04-28 04:52:19,876 INFO L290 TraceCheckUtils]: 23: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L272 TraceCheckUtils]: 24: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L290 TraceCheckUtils]: 25: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L290 TraceCheckUtils]: 26: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L290 TraceCheckUtils]: 27: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8122#true} {8122#true} #84#return; {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L272 TraceCheckUtils]: 29: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L290 TraceCheckUtils]: 30: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L290 TraceCheckUtils]: 31: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L290 TraceCheckUtils]: 32: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {8122#true} {8122#true} #86#return; {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L290 TraceCheckUtils]: 34: Hoare triple {8122#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L290 TraceCheckUtils]: 35: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L272 TraceCheckUtils]: 36: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L290 TraceCheckUtils]: 37: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L290 TraceCheckUtils]: 38: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L290 TraceCheckUtils]: 39: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,877 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {8122#true} {8122#true} #88#return; {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L272 TraceCheckUtils]: 41: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L290 TraceCheckUtils]: 42: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L290 TraceCheckUtils]: 43: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L290 TraceCheckUtils]: 44: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8122#true} {8122#true} #90#return; {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L272 TraceCheckUtils]: 46: Hoare triple {8122#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L290 TraceCheckUtils]: 47: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L290 TraceCheckUtils]: 48: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L290 TraceCheckUtils]: 49: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8122#true} {8122#true} #92#return; {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L290 TraceCheckUtils]: 51: Hoare triple {8122#true} assume !!(~r~0 >= 2 * ~b~0); {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L272 TraceCheckUtils]: 52: Hoare triple {8122#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L290 TraceCheckUtils]: 53: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L290 TraceCheckUtils]: 54: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L290 TraceCheckUtils]: 55: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {8122#true} {8122#true} #94#return; {8122#true} is VALID [2022-04-28 04:52:19,878 INFO L290 TraceCheckUtils]: 57: Hoare triple {8122#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L290 TraceCheckUtils]: 58: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L272 TraceCheckUtils]: 59: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L290 TraceCheckUtils]: 60: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L290 TraceCheckUtils]: 61: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L290 TraceCheckUtils]: 62: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {8122#true} {8122#true} #88#return; {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L272 TraceCheckUtils]: 64: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L290 TraceCheckUtils]: 65: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L290 TraceCheckUtils]: 66: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L290 TraceCheckUtils]: 67: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {8122#true} {8122#true} #90#return; {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L272 TraceCheckUtils]: 69: Hoare triple {8122#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L290 TraceCheckUtils]: 70: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L290 TraceCheckUtils]: 71: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L290 TraceCheckUtils]: 72: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {8122#true} {8122#true} #92#return; {8122#true} is VALID [2022-04-28 04:52:19,879 INFO L290 TraceCheckUtils]: 74: Hoare triple {8122#true} assume !(~r~0 >= 2 * ~b~0); {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L290 TraceCheckUtils]: 75: Hoare triple {8122#true} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L290 TraceCheckUtils]: 76: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L272 TraceCheckUtils]: 77: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L290 TraceCheckUtils]: 78: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L290 TraceCheckUtils]: 79: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L290 TraceCheckUtils]: 80: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {8122#true} {8122#true} #84#return; {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L272 TraceCheckUtils]: 82: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L290 TraceCheckUtils]: 83: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L290 TraceCheckUtils]: 84: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L290 TraceCheckUtils]: 85: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {8122#true} {8122#true} #86#return; {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L290 TraceCheckUtils]: 87: Hoare triple {8122#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L290 TraceCheckUtils]: 88: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L272 TraceCheckUtils]: 89: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L290 TraceCheckUtils]: 90: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:19,880 INFO L290 TraceCheckUtils]: 91: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:19,881 INFO L290 TraceCheckUtils]: 92: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,881 INFO L284 TraceCheckUtils]: 93: Hoare quadruple {8122#true} {8122#true} #88#return; {8122#true} is VALID [2022-04-28 04:52:19,881 INFO L272 TraceCheckUtils]: 94: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,881 INFO L290 TraceCheckUtils]: 95: Hoare triple {8122#true} ~cond := #in~cond; {8412#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:52:19,883 INFO L290 TraceCheckUtils]: 96: Hoare triple {8412#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:52:19,883 INFO L290 TraceCheckUtils]: 97: Hoare triple {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:52:19,884 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} {8122#true} #90#return; {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-28 04:52:19,884 INFO L272 TraceCheckUtils]: 99: Hoare triple {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,884 INFO L290 TraceCheckUtils]: 100: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:19,884 INFO L290 TraceCheckUtils]: 101: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:19,884 INFO L290 TraceCheckUtils]: 102: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:19,885 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {8122#true} {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #92#return; {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-28 04:52:19,885 INFO L290 TraceCheckUtils]: 104: Hoare triple {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !(~r~0 >= 2 * ~b~0); {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-28 04:52:19,892 INFO L290 TraceCheckUtils]: 105: Hoare triple {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8445#(= main_~r~0 (+ main_~x~0 (* (- 1) main_~b~0) (* main_~a~0 main_~y~0) (* (- 1) main_~q~0 main_~y~0)))} is VALID [2022-04-28 04:52:19,892 INFO L290 TraceCheckUtils]: 106: Hoare triple {8445#(= main_~r~0 (+ main_~x~0 (* (- 1) main_~b~0) (* main_~a~0 main_~y~0) (* (- 1) main_~q~0 main_~y~0)))} assume !false; {8445#(= main_~r~0 (+ main_~x~0 (* (- 1) main_~b~0) (* main_~a~0 main_~y~0) (* (- 1) main_~q~0 main_~y~0)))} is VALID [2022-04-28 04:52:19,892 INFO L272 TraceCheckUtils]: 107: Hoare triple {8445#(= main_~r~0 (+ main_~x~0 (* (- 1) main_~b~0) (* main_~a~0 main_~y~0) (* (- 1) main_~q~0 main_~y~0)))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:19,892 INFO L290 TraceCheckUtils]: 108: Hoare triple {8122#true} ~cond := #in~cond; {8412#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:52:19,893 INFO L290 TraceCheckUtils]: 109: Hoare triple {8412#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:52:19,893 INFO L290 TraceCheckUtils]: 110: Hoare triple {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:52:19,894 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} {8445#(= main_~r~0 (+ main_~x~0 (* (- 1) main_~b~0) (* main_~a~0 main_~y~0) (* (- 1) main_~q~0 main_~y~0)))} #84#return; {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-28 04:52:19,894 INFO L272 TraceCheckUtils]: 112: Hoare triple {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8467#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:52:19,894 INFO L290 TraceCheckUtils]: 113: Hoare triple {8467#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8471#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:52:19,895 INFO L290 TraceCheckUtils]: 114: Hoare triple {8471#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8123#false} is VALID [2022-04-28 04:52:19,895 INFO L290 TraceCheckUtils]: 115: Hoare triple {8123#false} assume !false; {8123#false} is VALID [2022-04-28 04:52:19,895 INFO L134 CoverageAnalysis]: Checked inductivity of 488 backedges. 114 proven. 5 refuted. 0 times theorem prover too weak. 369 trivial. 0 not checked. [2022-04-28 04:52:19,895 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:52:34,574 INFO L290 TraceCheckUtils]: 115: Hoare triple {8123#false} assume !false; {8123#false} is VALID [2022-04-28 04:52:34,574 INFO L290 TraceCheckUtils]: 114: Hoare triple {8471#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8123#false} is VALID [2022-04-28 04:52:34,575 INFO L290 TraceCheckUtils]: 113: Hoare triple {8467#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8471#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:52:34,575 INFO L272 TraceCheckUtils]: 112: Hoare triple {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8467#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:52:34,576 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} {8490#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #84#return; {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-28 04:52:34,577 INFO L290 TraceCheckUtils]: 110: Hoare triple {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:52:34,577 INFO L290 TraceCheckUtils]: 109: Hoare triple {8500#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:52:34,578 INFO L290 TraceCheckUtils]: 108: Hoare triple {8122#true} ~cond := #in~cond; {8500#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 04:52:34,578 INFO L272 TraceCheckUtils]: 107: Hoare triple {8490#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,578 INFO L290 TraceCheckUtils]: 106: Hoare triple {8490#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} assume !false; {8490#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-28 04:52:34,587 INFO L290 TraceCheckUtils]: 105: Hoare triple {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8490#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-28 04:52:34,587 INFO L290 TraceCheckUtils]: 104: Hoare triple {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !(~r~0 >= 2 * ~b~0); {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-28 04:52:34,588 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {8122#true} {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #92#return; {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-28 04:52:34,588 INFO L290 TraceCheckUtils]: 102: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,588 INFO L290 TraceCheckUtils]: 101: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:34,588 INFO L290 TraceCheckUtils]: 100: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:34,588 INFO L272 TraceCheckUtils]: 99: Hoare triple {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,589 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} {8122#true} #90#return; {8423#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-28 04:52:34,589 INFO L290 TraceCheckUtils]: 97: Hoare triple {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:52:34,590 INFO L290 TraceCheckUtils]: 96: Hoare triple {8500#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {8416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:52:34,590 INFO L290 TraceCheckUtils]: 95: Hoare triple {8122#true} ~cond := #in~cond; {8500#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 04:52:34,590 INFO L272 TraceCheckUtils]: 94: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,590 INFO L284 TraceCheckUtils]: 93: Hoare quadruple {8122#true} {8122#true} #88#return; {8122#true} is VALID [2022-04-28 04:52:34,590 INFO L290 TraceCheckUtils]: 92: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,591 INFO L290 TraceCheckUtils]: 91: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:34,591 INFO L290 TraceCheckUtils]: 90: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:34,591 INFO L272 TraceCheckUtils]: 89: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,591 INFO L290 TraceCheckUtils]: 88: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-28 04:52:34,591 INFO L290 TraceCheckUtils]: 87: Hoare triple {8122#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8122#true} is VALID [2022-04-28 04:52:34,591 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {8122#true} {8122#true} #86#return; {8122#true} is VALID [2022-04-28 04:52:34,591 INFO L290 TraceCheckUtils]: 85: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,591 INFO L290 TraceCheckUtils]: 84: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:34,591 INFO L290 TraceCheckUtils]: 83: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:34,591 INFO L272 TraceCheckUtils]: 82: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,591 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {8122#true} {8122#true} #84#return; {8122#true} is VALID [2022-04-28 04:52:34,591 INFO L290 TraceCheckUtils]: 80: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,591 INFO L290 TraceCheckUtils]: 79: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:34,591 INFO L290 TraceCheckUtils]: 78: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:34,591 INFO L272 TraceCheckUtils]: 77: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,591 INFO L290 TraceCheckUtils]: 76: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-28 04:52:34,592 INFO L290 TraceCheckUtils]: 75: Hoare triple {8122#true} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8122#true} is VALID [2022-04-28 04:52:34,592 INFO L290 TraceCheckUtils]: 74: Hoare triple {8122#true} assume !(~r~0 >= 2 * ~b~0); {8122#true} is VALID [2022-04-28 04:52:34,592 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {8122#true} {8122#true} #92#return; {8122#true} is VALID [2022-04-28 04:52:34,592 INFO L290 TraceCheckUtils]: 72: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,592 INFO L290 TraceCheckUtils]: 71: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:34,592 INFO L290 TraceCheckUtils]: 70: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:34,592 INFO L272 TraceCheckUtils]: 69: Hoare triple {8122#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,592 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {8122#true} {8122#true} #90#return; {8122#true} is VALID [2022-04-28 04:52:34,592 INFO L290 TraceCheckUtils]: 67: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,592 INFO L290 TraceCheckUtils]: 66: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:34,592 INFO L290 TraceCheckUtils]: 65: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:34,592 INFO L272 TraceCheckUtils]: 64: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,593 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {8122#true} {8122#true} #88#return; {8122#true} is VALID [2022-04-28 04:52:34,593 INFO L290 TraceCheckUtils]: 62: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,593 INFO L290 TraceCheckUtils]: 61: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:34,593 INFO L290 TraceCheckUtils]: 60: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:34,593 INFO L272 TraceCheckUtils]: 59: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,593 INFO L290 TraceCheckUtils]: 58: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-28 04:52:34,593 INFO L290 TraceCheckUtils]: 57: Hoare triple {8122#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {8122#true} is VALID [2022-04-28 04:52:34,593 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {8122#true} {8122#true} #94#return; {8122#true} is VALID [2022-04-28 04:52:34,593 INFO L290 TraceCheckUtils]: 55: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,593 INFO L290 TraceCheckUtils]: 54: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:34,594 INFO L290 TraceCheckUtils]: 53: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:34,594 INFO L272 TraceCheckUtils]: 52: Hoare triple {8122#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,594 INFO L290 TraceCheckUtils]: 51: Hoare triple {8122#true} assume !!(~r~0 >= 2 * ~b~0); {8122#true} is VALID [2022-04-28 04:52:34,594 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8122#true} {8122#true} #92#return; {8122#true} is VALID [2022-04-28 04:52:34,594 INFO L290 TraceCheckUtils]: 49: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,594 INFO L290 TraceCheckUtils]: 48: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:34,594 INFO L290 TraceCheckUtils]: 47: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:34,594 INFO L272 TraceCheckUtils]: 46: Hoare triple {8122#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,594 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8122#true} {8122#true} #90#return; {8122#true} is VALID [2022-04-28 04:52:34,594 INFO L290 TraceCheckUtils]: 44: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,594 INFO L290 TraceCheckUtils]: 43: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:34,595 INFO L290 TraceCheckUtils]: 42: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:34,595 INFO L272 TraceCheckUtils]: 41: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,595 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {8122#true} {8122#true} #88#return; {8122#true} is VALID [2022-04-28 04:52:34,595 INFO L290 TraceCheckUtils]: 39: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,595 INFO L290 TraceCheckUtils]: 38: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:34,595 INFO L290 TraceCheckUtils]: 37: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:34,595 INFO L272 TraceCheckUtils]: 36: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,595 INFO L290 TraceCheckUtils]: 35: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-28 04:52:34,595 INFO L290 TraceCheckUtils]: 34: Hoare triple {8122#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8122#true} is VALID [2022-04-28 04:52:34,596 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {8122#true} {8122#true} #86#return; {8122#true} is VALID [2022-04-28 04:52:34,596 INFO L290 TraceCheckUtils]: 32: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,596 INFO L290 TraceCheckUtils]: 31: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:34,596 INFO L290 TraceCheckUtils]: 30: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:34,596 INFO L272 TraceCheckUtils]: 29: Hoare triple {8122#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,596 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8122#true} {8122#true} #84#return; {8122#true} is VALID [2022-04-28 04:52:34,596 INFO L290 TraceCheckUtils]: 27: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,596 INFO L290 TraceCheckUtils]: 26: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:34,596 INFO L290 TraceCheckUtils]: 25: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:34,596 INFO L272 TraceCheckUtils]: 24: Hoare triple {8122#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,597 INFO L290 TraceCheckUtils]: 23: Hoare triple {8122#true} assume !false; {8122#true} is VALID [2022-04-28 04:52:34,597 INFO L290 TraceCheckUtils]: 22: Hoare triple {8122#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {8122#true} is VALID [2022-04-28 04:52:34,597 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8122#true} {8122#true} #82#return; {8122#true} is VALID [2022-04-28 04:52:34,597 INFO L290 TraceCheckUtils]: 20: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,597 INFO L290 TraceCheckUtils]: 19: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:34,597 INFO L290 TraceCheckUtils]: 18: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:34,597 INFO L272 TraceCheckUtils]: 17: Hoare triple {8122#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,597 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8122#true} {8122#true} #80#return; {8122#true} is VALID [2022-04-28 04:52:34,597 INFO L290 TraceCheckUtils]: 15: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,597 INFO L290 TraceCheckUtils]: 14: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:34,598 INFO L290 TraceCheckUtils]: 13: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:34,598 INFO L272 TraceCheckUtils]: 12: Hoare triple {8122#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 100 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,598 INFO L290 TraceCheckUtils]: 11: Hoare triple {8122#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8122#true} is VALID [2022-04-28 04:52:34,598 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8122#true} {8122#true} #78#return; {8122#true} is VALID [2022-04-28 04:52:34,598 INFO L290 TraceCheckUtils]: 9: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,598 INFO L290 TraceCheckUtils]: 8: Hoare triple {8122#true} assume !(0 == ~cond); {8122#true} is VALID [2022-04-28 04:52:34,598 INFO L290 TraceCheckUtils]: 7: Hoare triple {8122#true} ~cond := #in~cond; {8122#true} is VALID [2022-04-28 04:52:34,598 INFO L272 TraceCheckUtils]: 6: Hoare triple {8122#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 100 then 1 else 0)); {8122#true} is VALID [2022-04-28 04:52:34,598 INFO L290 TraceCheckUtils]: 5: Hoare triple {8122#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8122#true} is VALID [2022-04-28 04:52:34,598 INFO L272 TraceCheckUtils]: 4: Hoare triple {8122#true} call #t~ret6 := main(); {8122#true} is VALID [2022-04-28 04:52:34,598 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8122#true} {8122#true} #98#return; {8122#true} is VALID [2022-04-28 04:52:34,599 INFO L290 TraceCheckUtils]: 2: Hoare triple {8122#true} assume true; {8122#true} is VALID [2022-04-28 04:52:34,599 INFO L290 TraceCheckUtils]: 1: Hoare triple {8122#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3); {8122#true} is VALID [2022-04-28 04:52:34,599 INFO L272 TraceCheckUtils]: 0: Hoare triple {8122#true} call ULTIMATE.init(); {8122#true} is VALID [2022-04-28 04:52:34,599 INFO L134 CoverageAnalysis]: Checked inductivity of 488 backedges. 114 proven. 5 refuted. 0 times theorem prover too weak. 369 trivial. 0 not checked. [2022-04-28 04:52:34,599 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:52:34,599 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1682434087] [2022-04-28 04:52:34,600 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:52:34,600 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [969664670] [2022-04-28 04:52:34,600 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [969664670] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:52:34,600 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 04:52:34,600 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-28 04:52:34,600 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:52:34,600 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [655695328] [2022-04-28 04:52:34,601 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [655695328] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:52:34,601 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:52:34,601 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 04:52:34,601 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1031062512] [2022-04-28 04:52:34,601 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:52:34,601 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 3 states have call successors, (13) Word has length 116 [2022-04-28 04:52:34,602 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:52:34,602 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-28 04:52:34,653 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:52:34,653 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 04:52:34,654 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:52:34,654 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 04:52:34,654 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-28 04:52:34,654 INFO L87 Difference]: Start difference. First operand 156 states and 201 transitions. Second operand has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-28 04:52:35,282 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:52:35,282 INFO L93 Difference]: Finished difference Result 164 states and 207 transitions. [2022-04-28 04:52:35,282 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 04:52:35,282 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 3 states have call successors, (13) Word has length 116 [2022-04-28 04:52:35,282 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:52:35,283 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-28 04:52:35,283 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 46 transitions. [2022-04-28 04:52:35,283 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-28 04:52:35,284 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 46 transitions. [2022-04-28 04:52:35,284 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 46 transitions. [2022-04-28 04:52:35,336 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:52:35,336 INFO L225 Difference]: With dead ends: 164 [2022-04-28 04:52:35,336 INFO L226 Difference]: Without dead ends: 0 [2022-04-28 04:52:35,339 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 235 GetRequests, 221 SyntacticMatches, 3 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=115, Unknown=0, NotChecked=0, Total=156 [2022-04-28 04:52:35,340 INFO L413 NwaCegarLoop]: 27 mSDtfsCounter, 17 mSDsluCounter, 102 mSDsCounter, 0 mSdLazyCounter, 113 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 129 SdHoareTripleChecker+Invalid, 134 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 113 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 04:52:35,340 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [17 Valid, 129 Invalid, 134 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 113 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 04:52:35,340 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-28 04:52:35,340 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-28 04:52:35,341 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:52:35,341 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-28 04:52:35,341 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-28 04:52:35,341 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-28 04:52:35,341 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:52:35,341 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-28 04:52:35,341 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 04:52:35,341 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:52:35,341 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:52:35,341 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-28 04:52:35,341 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-28 04:52:35,341 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:52:35,341 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-28 04:52:35,342 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 04:52:35,342 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:52:35,342 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:52:35,342 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:52:35,342 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:52:35,342 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-28 04:52:35,342 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-28 04:52:35,342 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 116 [2022-04-28 04:52:35,342 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:52:35,342 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-28 04:52:35,342 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.375) internal successors, (27), 7 states have internal predecessors, (27), 3 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-28 04:52:35,342 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 0 states and 0 transitions. [2022-04-28 04:52:35,342 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:52:35,343 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 04:52:35,343 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:52:35,345 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-28 04:52:35,367 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-28 04:52:35,559 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-28 04:52:35,561 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-28 04:52:38,918 INFO L899 garLoopResultBuilder]: For program point reach_errorEXIT(line 8) no Hoare annotation was computed. [2022-04-28 04:52:38,919 INFO L899 garLoopResultBuilder]: For program point reach_errorENTRY(line 8) no Hoare annotation was computed. [2022-04-28 04:52:38,919 INFO L899 garLoopResultBuilder]: For program point reach_errorFINAL(line 8) no Hoare annotation was computed. [2022-04-28 04:52:38,919 INFO L902 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 11 13) the Hoare annotation is: true [2022-04-28 04:52:38,919 INFO L895 garLoopResultBuilder]: At program point L12(line 12) the Hoare annotation is: (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|) [2022-04-28 04:52:38,919 INFO L895 garLoopResultBuilder]: At program point L12-2(lines 11 13) the Hoare annotation is: (and (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)) [2022-04-28 04:52:38,919 INFO L895 garLoopResultBuilder]: At program point assume_abort_if_notEXIT(lines 11 13) the Hoare annotation is: (and (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)) [2022-04-28 04:52:38,919 INFO L902 garLoopResultBuilder]: At program point L64(line 64) the Hoare annotation is: true [2022-04-28 04:52:38,919 INFO L895 garLoopResultBuilder]: At program point L31(line 31) the Hoare annotation is: (and (<= main_~y~0 100) (<= 1 main_~y~0)) [2022-04-28 04:52:38,919 INFO L902 garLoopResultBuilder]: At program point L29(line 29) the Hoare annotation is: true [2022-04-28 04:52:38,919 INFO L895 garLoopResultBuilder]: At program point L29-1(line 29) the Hoare annotation is: (and (<= 0 main_~y~0) (<= main_~y~0 100)) [2022-04-28 04:52:38,919 INFO L902 garLoopResultBuilder]: At program point L27(line 27) the Hoare annotation is: true [2022-04-28 04:52:38,919 INFO L902 garLoopResultBuilder]: At program point L27-1(line 27) the Hoare annotation is: true [2022-04-28 04:52:38,919 INFO L902 garLoopResultBuilder]: At program point mainEXIT(lines 22 66) the Hoare annotation is: true [2022-04-28 04:52:38,920 INFO L895 garLoopResultBuilder]: At program point L50(lines 47 59) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-28 04:52:38,920 INFO L895 garLoopResultBuilder]: At program point L48(line 48) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-28 04:52:38,920 INFO L895 garLoopResultBuilder]: At program point L48-1(line 48) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-28 04:52:38,920 INFO L902 garLoopResultBuilder]: At program point mainFINAL(lines 22 66) the Hoare annotation is: true [2022-04-28 04:52:38,920 INFO L895 garLoopResultBuilder]: At program point L40(lines 38 62) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-28 04:52:38,920 INFO L895 garLoopResultBuilder]: At program point L38-2(lines 38 62) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-28 04:52:38,920 INFO L895 garLoopResultBuilder]: At program point L38-3(lines 38 62) the Hoare annotation is: (let ((.cse1 (= main_~b~0 (* main_~a~0 main_~y~0))) (.cse0 (<= main_~y~0 100)) (.cse2 (<= 1 main_~y~0))) (or (and (< main_~x~0 (* main_~b~0 2)) (= main_~x~0 (+ main_~b~0 main_~r~0)) (= main_~a~0 main_~q~0) .cse0 (= main_~a~0 2) .cse1 (<= main_~y~0 main_~x~0)) (and (< main_~r~0 main_~y~0) (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) .cse0 .cse2 .cse1) (and .cse0 (= main_~x~0 (+ main_~y~0 main_~r~0)) (= main_~q~0 1) .cse2 .cse1) (and (= main_~x~0 main_~r~0) .cse0 (= main_~q~0 0) .cse2))) [2022-04-28 04:52:38,920 INFO L902 garLoopResultBuilder]: At program point mainENTRY(lines 22 66) the Hoare annotation is: true [2022-04-28 04:52:38,920 INFO L895 garLoopResultBuilder]: At program point L55(line 55) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= (* 2 .cse0) main_~r~0) (<= 1 main_~r~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-28 04:52:38,920 INFO L895 garLoopResultBuilder]: At program point L55-1(line 55) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= (* 2 .cse0) main_~r~0) (<= 1 main_~r~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-28 04:52:38,920 INFO L895 garLoopResultBuilder]: At program point L49(line 49) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-28 04:52:38,920 INFO L895 garLoopResultBuilder]: At program point L47-2(lines 47 59) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-28 04:52:38,920 INFO L895 garLoopResultBuilder]: At program point L47-3(lines 47 59) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-28 04:52:38,920 INFO L895 garLoopResultBuilder]: At program point L39(line 39) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-28 04:52:38,920 INFO L895 garLoopResultBuilder]: At program point L39-1(line 39) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 100) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-28 04:52:38,921 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.initFINAL(line -1) the Hoare annotation is: true [2022-04-28 04:52:38,921 INFO L895 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-28 04:52:38,921 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.initEXIT(line -1) the Hoare annotation is: true [2022-04-28 04:52:38,921 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startEXIT(line -1) the Hoare annotation is: true [2022-04-28 04:52:38,921 INFO L902 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-28 04:52:38,921 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-28 04:52:38,921 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startFINAL(line -1) the Hoare annotation is: true [2022-04-28 04:52:38,921 INFO L895 garLoopResultBuilder]: At program point L16(lines 16 17) the Hoare annotation is: (not (<= 1 |__VERIFIER_assert_#in~cond|)) [2022-04-28 04:52:38,921 INFO L895 garLoopResultBuilder]: At program point L15(lines 15 18) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (not (<= 1 |__VERIFIER_assert_#in~cond|))) [2022-04-28 04:52:38,921 INFO L902 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 14 20) the Hoare annotation is: true [2022-04-28 04:52:38,921 INFO L895 garLoopResultBuilder]: At program point L15-2(lines 14 20) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (not (<= 1 |__VERIFIER_assert_#in~cond|))) [2022-04-28 04:52:38,921 INFO L895 garLoopResultBuilder]: At program point __VERIFIER_assertEXIT(lines 14 20) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (not (<= 1 |__VERIFIER_assert_#in~cond|))) [2022-04-28 04:52:38,921 INFO L895 garLoopResultBuilder]: At program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 17) the Hoare annotation is: (not (<= 1 |__VERIFIER_assert_#in~cond|)) [2022-04-28 04:52:38,923 INFO L356 BasicCegarLoop]: Path program histogram: [6, 4, 2, 2, 2, 2, 2, 2] [2022-04-28 04:52:38,924 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-28 04:52:38,927 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-28 04:52:38,928 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-28 04:52:38,967 INFO L163 areAnnotationChecker]: CFG has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-28 04:52:38,975 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 28.04 04:52:38 BoogieIcfgContainer [2022-04-28 04:52:38,975 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-28 04:52:38,976 INFO L158 Benchmark]: Toolchain (without parser) took 242549.33ms. Allocated memory was 187.7MB in the beginning and 307.2MB in the end (delta: 119.5MB). Free memory was 136.9MB in the beginning and 258.9MB in the end (delta: -122.0MB). Peak memory consumption was 155.4MB. Max. memory is 8.0GB. [2022-04-28 04:52:38,976 INFO L158 Benchmark]: CDTParser took 0.12ms. Allocated memory is still 187.7MB. Free memory is still 153.2MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-28 04:52:38,977 INFO L158 Benchmark]: CACSL2BoogieTranslator took 347.49ms. Allocated memory is still 187.7MB. Free memory was 136.8MB in the beginning and 161.9MB in the end (delta: -25.1MB). Peak memory consumption was 12.3MB. Max. memory is 8.0GB. [2022-04-28 04:52:38,977 INFO L158 Benchmark]: Boogie Preprocessor took 48.11ms. Allocated memory is still 187.7MB. Free memory was 161.5MB in the beginning and 160.0MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-28 04:52:38,977 INFO L158 Benchmark]: RCFGBuilder took 344.36ms. Allocated memory is still 187.7MB. Free memory was 160.0MB in the beginning and 148.5MB in the end (delta: 11.5MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-28 04:52:38,977 INFO L158 Benchmark]: TraceAbstraction took 241792.51ms. Allocated memory was 187.7MB in the beginning and 307.2MB in the end (delta: 119.5MB). Free memory was 147.9MB in the beginning and 258.9MB in the end (delta: -111.0MB). Peak memory consumption was 166.2MB. Max. memory is 8.0GB. [2022-04-28 04:52:38,978 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.12ms. Allocated memory is still 187.7MB. Free memory is still 153.2MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 347.49ms. Allocated memory is still 187.7MB. Free memory was 136.8MB in the beginning and 161.9MB in the end (delta: -25.1MB). Peak memory consumption was 12.3MB. Max. memory is 8.0GB. * Boogie Preprocessor took 48.11ms. Allocated memory is still 187.7MB. Free memory was 161.5MB in the beginning and 160.0MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 344.36ms. Allocated memory is still 187.7MB. Free memory was 160.0MB in the beginning and 148.5MB in the end (delta: 11.5MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * TraceAbstraction took 241792.51ms. Allocated memory was 187.7MB in the beginning and 307.2MB in the end (delta: 119.5MB). Free memory was 147.9MB in the beginning and 258.9MB in the end (delta: -111.0MB). Peak memory consumption was 166.2MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 17]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 42 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 241.7s, OverallIterations: 11, TraceHistogramMax: 16, PathProgramHistogramMax: 6, EmptinessCheckTime: 0.0s, AutomataDifference: 11.8s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 3.4s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 261 SdHoareTripleChecker+Valid, 3.9s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 195 mSDsluCounter, 1790 SdHoareTripleChecker+Invalid, 3.9s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 1337 mSDsCounter, 129 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 2117 IncrementalHoareTripleChecker+Invalid, 2246 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 129 mSolverCounterUnsat, 453 mSDtfsCounter, 2117 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 1062 GetRequests, 949 SyntacticMatches, 9 SemanticMatches, 104 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 330 ImplicationChecksByTransitivity, 1.7s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=156occurred in iteration=10, InterpolantAutomatonStates: 85, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 1.2s AutomataMinimizationTime, 11 MinimizatonAttempts, 49 StatesRemovedByMinimization, 7 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 39 LocationsWithAnnotation, 517 PreInvPairs, 756 NumberOfFragments, 487 HoareAnnotationTreeSize, 517 FomulaSimplifications, 541 FormulaSimplificationTreeSizeReduction, 0.6s HoareSimplificationTime, 39 FomulaSimplificationsInter, 10690 FormulaSimplificationTreeSizeReductionInter, 2.6s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: No data available, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 47]: Loop Invariant Derived loop invariant: (((q * y + b + r == x + a * y && 1 <= r) && y <= 100) && 1 <= y) && b == a * y - InvariantResult [Line: 38]: Loop Invariant Derived loop invariant: ((q * y + b + r == x + a * y && y <= 100) && 1 <= y) && b == a * y - ProcedureContractResult [Line: 11]: Procedure Contract for assume_abort_if_not Derived contract for procedure assume_abort_if_not: !(\old(cond) == 0) && cond == \old(cond) - ProcedureContractResult [Line: 22]: Procedure Contract for main Derived contract for procedure main: 1 - ProcedureContractResult [Line: 14]: Procedure Contract for __VERIFIER_assert Derived contract for procedure __VERIFIER_assert: \old(cond) == cond || !(1 <= \old(cond)) RESULT: Ultimate proved your program to be correct! [2022-04-28 04:52:39,037 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request...