First-order logic is sufficient for describing sequential programs. An architecture description in Prolog provides a simple introduction to the approach. The following are other examples of Prolog executable specifications covering several software requirements domains.