No estoy de acuerdo con otras respuestas de que el canal de comunicación debe modelarse de manera diferente. La malicia es irrelevante, los mensajes perdidos simples con cualquier probabilidad distinta de cero son suficientes para crear el problema de los dos generales. El correo electrónico y la mensajería instantánea, por ejemplo, tienen una probabilidad baja pero no nula de soltar mensajes. Las llamadas telefónicas pueden sufrir interferencias, por lo que, como con el problema de los dos generales, debe confirmar de alguna manera si la otra persona escuchó lo que dijo, hasta el infinito. Y sin embargo, con frecuencia uso estos canales para hacer acuerdos con otras personas.
Lo que el problema insoluble de "dos generales" no puede resolver es garantizar el conocimiento común. En la vida real no requerimos conocimiento común formal para proceder. Por lo tanto, el objetivo en la mayoría de las situaciones prácticas debe describirse de manera diferente al objetivo en el problema de los dos generales.
Nos conformamos con que el acuerdo sea "suficientemente probable". Es posible que no esté dispuesto a atacar a menos que esté seguro de que atacará, pero estoy dispuesto a caminar hasta la cafetería para encontrarme con usted siempre que la probabilidad de una falla en las comunicaciones no sea muy superior a la probabilidad de que no lo haga. llegar debido al tráfico. A diferencia de los generales, me arriesgaré a que me conozcas.
Si alguna vez alguien le explicó algo tres veces de manera diferente cuando lo recibió la primera vez, o si alguien le pidió que confirmara algo que ya ha confirmado dos veces, es porque alcanzó su umbral de " suficientemente probable "antes de que llegaran a los suyos.
Elija su elección de psicología, filosofía o biología evolutiva como el reino correcto para buscar una respuesta a la siguiente pregunta, por qué realmente no necesitamos una garantía completa de conocimiento común :-)
También se relaciona con problemas prácticos en informática. Por ejemplo, cuando usamos un código de corrección de un solo error para "validar" que un símbolo en un mensaje ha llegado correctamente, todo lo que estamos haciendo es aceptar que la probabilidad de un doble error es insignificante por el momento. Luego, más adelante en el protocolo, podríamos tener un CRC, para reducir aún más la probabilidad de error no detectado. Nada de esto resuelve el problema de los dos generales, pero es suficiente para mí, mi banco y un comerciante para "estar de acuerdo" en que se ha producido una transacción con tarjeta de crédito, con una pequeña probabilidad de que no estemos de acuerdo.