  This work delves into the realm of logic puzzles by focusing on the Knight
and Knave problems popularized by Raymond Smullyan in his book series "What is
the Name of This Book?". The puzzles revolve around characters known as Knights
(truth-tellers) and Knaves (liars), challenging solvers to determine the true
identity of each person based on their statements. This paper explores the
utilization of Python algorithms to automate the process of solving these
puzzles, offering a computational approach that enhances efficiency and
accessibility. In this work, we aim to develop a Python algorithm capable of
parsing and analyzing the statements provided in the Knight and Knave puzzles.
A logical reasoning framework is integrated within the algorithm to deduce the
identities of the characters based on their statements. The algorithm processes
the input statements, create a knowledge base, and make deductions following
the rules of Knight and Knave logic. The developed algorithm is thoroughly
tested on various instances of Knight and Knave puzzles, comparing its results
to known solutions and manual approaches. We further expand the scope of the
problem by introducing a Normal (who can sometimes lie and sometimes say the
truth).
