1. A computer system comprising a program execution environment which is distributed between a server execution environment of a server apparatus and a client execution environment of a client apparatus, said client execution environment being operable to execute a plurality of client components, and said server execution environment being operable to execute a server component corresponding to each client component, wherein at least one client component is selected to be a primary client component, each primary client component being operable such that its behaviour and/or state is influenced by simulation information which is derived from the same source as simulation information which is operable to influence the behaviour and/or state of the corresponding server component, wherein at least one client component is selected to be a non-primary client component, the non-primary client component being operable such that its behaviour and/or state is influenced by simulation information which is derived locally, such that the locally derived simulation information is different from simulation information which is operable to influence the behaviour and/or state of the corresponding server component, wherein a client component is selected to be a primary client component or a non-primary client component in dependence on a property of an instance of program execution in the client execution environment, wherein the primary client component receives simulation information from a first source and each non-primary component receives simulation information from a second source, the second source being different from the first source; and wherein the server is operable to transmit correction information to said client and wherein said client is operable, following receipt of said correction information, to change the state of one or more non-primary client components only based on said correction information.