Bir yani B, indirgenebilir olalım . Bu nedenle, A'yı kabul eden Turing makinesi B için bir kehanete erişebilir . Turing makinesi kabul edelim bir olmak M A ve torpil B olmak O B . İndirgeme türleri:
Turing azaltma: , O B için birden fazla sorgu yapabilir .
Karp azaltma: Aynı zamanda "polinom zaman Turing azaltılması" adlı: giriş polytime olarak inşa edilmelidir. Ayrıca, için sorgu sayısı O B bir polinom ile sınırlı olmalıdır. Bu durumda: P bir = P B .
Bir çok-on Turing azaltma: tek sorgu yapabilir O B son aşaması sırasında,. Dolayısıyla kâhin cevap değiştirilemez. Bununla birlikte, inşa giriş için geçen süre O B bir polinom ile sınırlı olması gerekmez. Eşdeğer: ( ≤ m birden çok bir indirgenmeye gösteren)
∃ eğerhesaplanabilir bir fonksiyon f : Σ ∗ → Σ ∗ öyle ki f ( x ) ∈ B .
Cook azaltma: de denir "polinom zaman çok-on azaltılması": için bir giriş oluşturmak için geçen süre, bir çok-on indirgeme bir polinom ile sınırlı olmalıdır. Eşdeğer olarak: ( ≤ p m çoklu azaltmayı gösterir)
∃ eğerbirpoli-zamanhesaplanabilir fonksiyon f : Σ ∗ → Σ ∗ öyle ki f ( x ) ∈ B .
Parsimonious azaltma: Her örneği A Cook azaltma: Aynı zamanda "polinom zaman bire indirgeme" olarak adlandırılan eşsiz örneğine eşleştirilmiş B . Eşdeğer olarak: ( ≤ p 1, cimri azalmayı gösterir)
ise ∃ birpoli-zamanhesaplanabilir bijection f : Σ * → Σ * bu şekilde f ( x ) ∈ B .
Bu azaltmalar çözüm sayısını korur. Bu nedenle .
Oracle sorgularının sayısını sınırlayarak daha fazla indirgeme türü tanımlayabiliriz, ancak bunları dışarıda bırakarak, kullanılan farklı indirimler için isimlendirmeyi doğru bir şekilde alıp almadığımı söyleyen biri bana söyleyebilir. NP-tam problemleri Aşçı azaltma veya cimri azaltma konusunda tanımlanmış mı? Herkes Cook altında NP-tamamlanmış bir sorun bir örnek verebilir ve cimri indirgeme altında değil.
Eğer yanılmıyorsam, # P-Complete sınıfı Karp azaltmalarıyla tanımlanır.