Probablemente hay un error en alguna de las compuertas logicas porque el circuito como tal lo veo bien, asi que deberia corregirse rehaciendo las tablas de verdad:
resultados
1 000
0 001
0 010
1 011
1 100
1 101
0 110
1 111