Correct option is C
To determine if the two given machines (finite automata) are equivalent, we need to check if they accept the same language. This means both machines should accept the same set of strings over the same alphabet. So, let us analyze the given machines:
Machine 1:
· States: A, B
· Alphabet: {a, b}
· Transitions:
1. From state A:
a → A
b → B
2. From state B:
a → B
b → B
· Final state: B
Machine 2:
· States: A, B, C
· Alphabet: {a, b}
· Transitions:
1. From state A:
a → B
2. From state B:
a → B
b → C
3. From state C:
a → B
b → C
· Final state: C
By analyzing step-by-step we get:
1.
Machine 1:
· Starting at state A:
· On input a, remains in state A.
· On input b, moves to state B (final state).
· Starting at state B (final state):
· On input a, remains in state B.
· On input b, remains in state B.
· Language accepted: Strings that contain at least one 'b'.
2.
Machine 2:
· Starting at state A:
· On input a, moves to state B.
· Starting at state B:
· On input a, remains in state B.
· On input b, moves to state C (final state).
· Starting at state C (final state):
· On input a, moves to state B.
· On input b, remains in state C.
· Language accepted: Strings that contain at least one 'b'.
By comparing we get that, both machines accept the same language: strings that contain at least one 'b'. Therefore
, both machines are equivalent.