Considera un predicato monotonico sopra il powerset 2 | n | (ordinato per inclusione). Per "monotonico" intendo: ∀ x , y ∈ 2 | n | tale che x ⊂ y , se P ( x ) quindi P ( y ) . Sto cercando un algoritmo per trovare tutti gli elementi minimi di P , ovvero x ∈ 2 | n | tale che P ( x )ma , ¬ P ( y ) . Poiché la larghezza di 2 | n | è , potrebbero esserci in modo esponenziale molti elementi minimi, e quindi il tempo di esecuzione di un tale algoritmo potrebbe essere esponenziale in generale. Tuttavia, potrebbe esistere un algoritmo per questo compito che è polinomiale nella dimensione dell'output?
[Contesto: è stata posta una domanda più generale, ma non vi è stato alcun tentativo nelle risposte per valutare la complessità dell'algoritmo nella dimensione dell'output. Se suppongo che esista un solo elemento minimo, ad esempio, posso eseguire una ricerca binaria seguendo questa risposta e trovarla. Tuttavia, se voglio continuare a trovare elementi più minimi, devo mantenere le informazioni correnti che ho su in un modo che renderebbe tracciabile per continuare la ricerca senza perdere tempo su ciò che è già noto. È possibile farlo e trovare tutti gli elementi minimi in tempo polinomiale nella dimensione dell'output?]
Idealmente, vorrei capire se ciò può essere fatto con DAG generali, ma già non so come rispondere alla domanda per .