Espresso, iki değerli (veya çok değerli) Boolean fonksiyonlarının gösterimlerini giriş olarak alır ve çıkış olarak bu gösterimin minimal ifadesini bulur. Espresso verilen dosyayı (eğer dosya adı verilmemişse standart girişi) okur, iki seviyeli indirgeme işlemini gerçekleştirir ve standart çıkışa minimize edilmiş sonucu yazar. Espresso minimize edilen fonksiyonun orijinal fonksiyona denk olduğunu otomatik olarak ispatlar. Espresso’nun komut seçenekleri ile çok amaçlı indirgemeler gerçeklenebilir.

 

Espresso giriş olarak PLA formatını kabul eder. Örnek olarak 2 bitlik 2 sayının toplamını gerçekleştiren 3 çıkışlı devrenin doğruluk tablosunun PLA formatındaki ifadesi şu şekildedir.

 

.i 4   % giriş sayısı

.o 3   % çıkış sayısı

.ilb a1 a0 b1 b0   % giriş etiketleri

.ob c s1 s0 % çıkış etiketleri

.p 16 % Doğruluk tablosunu ifade eden asal bileşen sayısı

0000 000

0001 001

0010 010

0011 011

0100 001

0101 010

0110 011

0111 100

1000 010

1001 011

1010 100

1011 101

1100 011

1101 100

1110 101

1111 110

.e     % Son

 

Espresso kullanarak elde edilen minimal sonuç:

 
.i 4

.o 3

.ilb a1 a0 b1 b0

.ob c s1 s0

.p 11

0101 010

1111 010

1-00 010

0-10 010

100- 010

001- 010

-111 100

11-1 100

-1-0 001

-0-1 001

1-1- 100

.e

 

Sonuç olarak, c, s1 ve s0 çıkışlarının Boolean ifadeleri şu şekildedir:

 

s0: a0.b0’ + a0’.b0

s1: a1’.a0.b1’.b0 + a1.a0.b1.b0 + a1.b1’.b0’ + a1’.b1.b0’ + a1.a0’.b1’ + a1’.a0’.b1

 c: a0.b1.b0 + a1.a0.b0 + a1.b1