Abstract: A method for simplifying computer protocols is disclosed which offers advantages in reducing the memory and processing requirements for invoking the protocol. In accordance with the present invention, a protocol is represented as a collection of communicating finite machines. The subset of services offered by the protocol desired by a user is also specified as a finite state machine. The method finds the thinned version of the protocol by comparing the finite state machine representation of the protocol with the finite state machine representation of the subset of desired services and keeps only that part of the protocol necessary for providing the desired subset of services.