In artificial intelligence (AI), an expert system is a computer system emulating the decision-making ability of a human expert.[1] Expert systems are designed to solve complex problems by reasoning through bodies of knowledge, represented mainly as if–then rules rather than through conventional procedural programming code.[2] Expert systems were among the first truly successful forms of AI software.[3][4][5][6][7] They were created in the 1970s and then proliferated in the 1980s,[8] being then widely regarded as the future of AI — before the advent of successful artificial neural networks.[9] An expert system is divided into two subsystems: 1) a knowledge base, which represents facts and rules; and 2) an inference engine, which applies the rules to the known facts to deduce new facts, and can include explaining and debugging abilities.