Una referència circular consta de una serie de Referencias donde el último objeto hace referencia al primero, dando lugar a un bucle cerro. El concepto matemático subjacente es un ciclo de teoría de grafos.
Explicación
Si definimos como , El hecho de que A hace referencia a B. Sí planteamos: , Entonces tenemos una referencia circular, dado que hemos definido: , Que implica por transitividad . Esta situación plantea un problema ya significa que no se puede tener A sin conocer A.
La Falacia de referencia circular ha tenido lugar en muchas ocasiones a lo largo de la historia, como en el caso de Isla Catalana que es una pequeña isla en territorio de México en el Golfo de California frente a las costas del estado de Baja California Sur . La isla está situada en la parte sur del Golfo de California y se encuentra a 25 km de la península de Baja California . Originalmente se llamaba Isla Catalana, pero en un cierto momento (por error o por mala fe) en los archivos de EE. UU. aparece como Isla Catalina, a partir de entonces, todas las referencias que han mirado los archivos de EE. UU. le han llamado Isla Catalina, estas referencias se han convertido en circulares ya que se citan las unas a las otras, y de hecho, en Google Maps todavía aparece con ese nombre. Afortunadamente las autoridades mexicanas han hecho prevalecer el nombre original y el nombre oficial en México es el original de Isla Catalana.
No se debe confundir una referencia circular con la falacia lógica de una argumentación circular . Aunque a menudo una referencia circular no es útil y no revela ninguna información, no es necesariamente así, como dos entradas de un índice de un libro que se refieren entre sí, hay casos en que una referencia circular es útil:
De hecho, se puede argumentar que la autorreferencia es una consecuencia necesaria de la Ley de no contradicción de Aristóteles, que es un axioma filosófico fundamental. Según este principio, sin autorreferencias, la lógica y las matemáticas se convierten en imposibles o, al menos, carecen de utilidad.
A veces, una red comercial planificada incorrectamente puede conducir a una referencia circular. Por ejemplo:
Alicia debe volver su lavadora, es defectuosa y necesita que lo arreglen. Llama a la empresa y recibe instrucciones de Bob del "Servicio de atención al cliente" de que lo solicite a la Carol de "Devoluciones y cambios". La Carol, a su vez le dice a Alicia que lo pida a David de "Reclamaciones". Y David le dice a Alicia que le pida a Bob del "Servicio de atención al cliente", con lo que se crea un círculo vicioso . un caso
Todo el conjunto de referencias es inútil porque ninguna de ellas puede satisfacer la solicitud de Alicia ; Alicia sigue un bucle completo, donde cada referencia la conduce a otra persona y, finalmente, se la vuelve a enviar a la primera persona.
Las referencias circulares pueden aparecer en la programación de ordenadores cuando un fragmento de código requiere el resultado de otro, pero este código necesita el resultado del primero. Por ejemplo, las dos funciones, "Posner" y "plus1" del programa Python siguiente, incluyen una referencia circular:
Las referencias circulares como el ejemplo anterior pueden devolver resultados válidos si tienen una condición final. Si no hay ninguna condición final, una referencia circular conduce a una condición conocida como interbloqueo .
En la norma ISO, las restricciones de integridad circular SQL admiten implícitamente dentro de una sola mesa. Entre múltiples tablas, se permiten restricciones circulares (por ejemplo, claves externas) definiendo las restricciones como diferibles (véase CREAR TABLA para PostgreSQL y Ejemplos de restricciones DEFERRABLE para Oracle). En este caso, la restricción se comprueba al final de la transacción no en el momento en que se ejecuta la sentencia DML. Para actualizar una referencia circular, se pueden emitir dos declaraciones en una única transacción que satisfaga ambas referencias una vez se haya comprometido la transacción.
Las referencias circulares también se producen en los hojas de cálculo cuando dos celdas requieren el resultado de la otra. Por ejemplo, si el valor de la celda A1 se obtiene añadiendo 5 al valor de la celda B1 y el valor de la celda B1 se obtiene añadiendo 3 al valor de la celda A1, no se pueden calcular valores. (Incluso si las especificaciones son A1: = B1 + 5 y B1: = A1-5, aunque hay una referencia circular. No ayuda que, por ejemplo, A1 = 3 y B1 = -2 satisfagan ambas fórmulas, ya que hay infinitamente muchos valores posibles de A1 y B1 que pueden satisfacer ambas instancias. )
La referencia circular en los hojas de cálculo puede ser una técnica muy útil para resolver ecuaciones implícitas como la ecuación de Colebrook y algunas otras, que de otro modo podrían requerir tediosos algoritmos de Newton-Raphson en VBA o el uso de macros .
Hay que distinguir los procesos que contienen una referencia circular entre los que son incompatibles y los que son un cálculo iterativo con un resultado final. Es posible que estos últimos fallen en hojas de cálculo no preparados para gestionarlos, pero, sin embargo, son lógicamente válidos.
Escribe un comentario o lo que quieras sobre Referencia circular (directo, no tienes que registrarte)
Comentarios
(de más nuevos a más antiguos)