From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Tue, 20 Jun 2006 20:11:47 +0400 From: =?koi8-r?B?5MXOydMg883J0s7P1w==?= To: ALT Devel discussion list Message-ID: <20060620161147.GD13709@localhost.localdomain> References: <20060615094855.GD11771@grep.po.cs.msu.su> <200606191526.27333.led@altlinux.ru> <20060619130359.GI6065@localhost.localdomain> <200606191644.35873.led@altlinux.ru> <20060619151802.GJ6065@localhost.localdomain> Mime-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20060619151802.GJ6065@localhost.localdomain> User-Agent: Mutt/1.5.11 X-Virus-Scanned: by amavisd-new at bigtelecom.ru Subject: Re: [devel] =?koi8-r?b?W3Npc3lwaHVzIC0+IGRldmVsXSDz1MHCyczYztnKIPPJ?= =?koi8-r?b?2snG?= X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.7 Precedence: list Reply-To: ALT Devel discussion list List-Id: ALT Devel discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 20 Jun 2006 20:26:47 -0000 Archived-At: List-Archive: List-Post: On Mon, Jun 19, 2006 at 07:18:02PM +0400, Алексей Турбин wrote: AT> Тогда возникает только вычислительная проблема. Придется анализировать AT> т.н. power set отстойника (т.е. всевозможные подмножества, которые можно AT> составить из пакетов в отстойнике). Т.е. если в отстойнике находится 10 AT> пакетов, то в поисках максимального "хорошего" подмножества пакетов AT> придется анализировать 2^{10} = 1024 подмножества (включая полное и AT> пустое). Если же в отстойнике 100 пакетов, то имеем порядка 10^{30} AT> вариантов, и задачу в строгом смысле вряд ли удастся решить. Есть AT> конечно градиентные методы и всякая прочая хрень... Эта задача решается куда проще. При условии что у нас есть алгоритм, который по группе пакетов дает четкий ответ есть там unmet'ы или нет. И если есть, то какой пакет не устанавливается, и каких provides ему не хватает. Ну и, разумеется, есть информация по requires/provides всех пакетов. Берем пакет. Если unmet'ов нет -- сразу переносим. Если unmet'ы есть, то смотрим какие из пакетов во временном репозитории имеют соответствующие provides, повторяя этот процесс рекурсивно до получения либо группы пакетов, которые можно установить, либо информации о том, что этот пакет нельзя установить вообще. -- С уважением, Денис http://freesource.info ---------------------------------------------------------------------------- плохо закрыл - вот теперь закрываю :) -- lav in #575