14. A data processing system having at least one processor capable of providing an automatic response to a received user input, the system being programmed to automatically: (a) in response to receiving, from a user's device, a partial user input signifying a portion of an answerable statement, before receiving a complete user input representing the entire answerable statement, calculate for each of a plurality of predefined answerable statements, a metric that is, at least in part, based on a frequency with which the predefined answerable statement had been selected by previous users; (b) if the metric for none of the predefined answerable statements exceeds a threshold, send, to the user's device, information representing a selected plurality of the predefined answerable statements, which predefined answerable statements are selected based on the respective associated metrics; and (c) if the metric for one of the predefined answerable statements exceeds a threshold and not otherwise, send, to the user's device, information representing a response associated with said one of the predefined answerable statements.
22. The data processing system of claim 14 wherein the information sent to the user's device in part (b) consists of the selected plurality of predefined answerable statements ranked in order of their respective metrics.