Logic By Design