Trong thực tế, có thể chỉ ra rằng, với mỗi đủ nhỏ (nhỏ hơn ), có các hàm được tính toán bằng các mạch có kích thước nhưng không phải bởi các mạch có kích thước , hoặc thậm chí , tùy thuộc vào loại cổng mà bạn cho phép.2 n / n f ( n ) f ( n ) - O ( 1 ) f ( n ) - 1f2n/ nf( n )f( n ) - O ( 1 )f( n ) - 1
Dưới đây là một đối số đơn giản cho thấy rằng có các hàm tính toán theo kích thước nhưng không phải là kích thước .f ( n ) - O ( n )f( n )f( n ) - O ( n )
Chúng ta biết rằng:
- có một hàm yêu cầu độ phức tạp của mạch ít nhất là và đặc biệt là độ phức tạp của mạch nhiều hơn .2 n / O ( n ) f ( n )g2n/ O(n)f( n )
- hàm sao cho z ( x ) = 0 cho mọi đầu vào x được tính toán bằng một mạch có kích thước không đổi.zz( x ) = 0x
- nếu hai hàm và g 2 chỉ khác nhau ở một đầu vào, thì độ phức tạp mạch của chúng khác nhau nhiều nhất là O ( n )g1g2Ô ( n )
Giả sử là khác không trên N đầu vào. Gọi đầu vào như x 1 , ... , x N . Chúng ta có thể xem xét, với mỗi i , hàm g i ( x ) là hàm chỉ thị của tập { x 1 , Vượt , x i } ; do đó g 0 = 0 và g N = g .gNx1, Lọ , xNTôigTôi( x ){ x1, Lọ , xTôi}g0= 0gN= g
Rõ ràng có một số sao cho g i + 1 có độ phức tạp mạch lớn hơn f ( n ) và g i có độ phức tạp mạch nhỏ hơn f ( n ) . Nhưng sau đó g i có độ phức tạp mạch nhỏ hơn f ( n ) nhưng nhiều hơn f ( n ) - O ( n ) .Tôigtôi + 1f(n)gif(n)gif(n)f(n)−O(n)