A truth maintenance system