I
- tipo del conjunto inicialF
- tipo del conjunto finalpublic static class JMEMath.Correspondencias.Correspondencia<I,F>
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
int[][] |
ady |
int |
carCodom |
int |
carDom |
F[] |
codominio |
I[] |
dominio |
Constructor and Description |
---|
Correspondencia(I[] dominio,
F[] codominio,
int[][] ady)
Crea una correspondencia
|
Modifier and Type | Method and Description |
---|---|
java.util.List<java.lang.Object[]> |
aPares()
{(a,b)∈R⊂AxB}={(a,b)∈AxB,aRb}
|
JMEMath.Correspondencias.Correspondencia<I,F> |
clausuraReflexiva()
Clausura reflexiva de una relación
|
JMEMath.Correspondencias.Correspondencia<I,F> |
clausuraSimetrica()
Clausura simétrica de una relación
|
JMEMath.Correspondencias.Correspondencia<I,F> |
complementaria()
Correspondencia complementaria
|
<T> JMEMath.Correspondencias.Correspondencia<T,F> |
composicion(JMEMath.Correspondencias.Correspondencia<T,I> other)
Composición f(g)
|
java.util.List<java.util.List<I>> |
conjuntoCociente()
Conjunto cociente A/R de una relación de equivalencia
|
boolean |
equals(java.lang.Object obj) |
boolean |
esAcotada()
Comprueba si la relación tiene máximo y mínimo
|
boolean |
esAcotadaInferiormente()
Comprueba si la relación tiene mínimo
|
boolean |
esAcotadaSuperiormente()
Comprueba si la relación tiene máximo
|
boolean |
esAntisimetrica()
Comprobar si la relación es antisimétrica
|
boolean |
esAntitransitiva()
Comprobar si la relación es antitransitiva
|
boolean |
esAplicacion()
Comprueba si la correspondencia es aplicación
|
boolean |
esAsimetrica()
Comprobar si la relación es asimétrica
|
boolean |
esBiyectiva()
Comprueba si la correspondencia es biyectiva
|
boolean |
esCircular()
Comprobar si la relación es circular
|
boolean |
esConectada()
Comprobar si la relación es conectada
|
boolean |
esContenida(JMEMath.Correspondencias.Correspondencia<I,F> extension)
Comprueba si una correspondencia S está contenida en otra R (es más pequeña)
|
boolean |
esDependencia()
Comprobar si la relación es dependencia
|
boolean |
esEquivalencia()
Comprobar si la relación es de equivalencia
|
boolean |
esIntransitiva()
Comprobar si la relación es intransitiva
|
boolean |
esInyectiva()
Comprueba si la correspondencia es inyectiva (f(x1)!
|
boolean |
esIrreflexiva()
Comprobar irreflexión
|
boolean |
esOrdenParcial()
Comprobar si la relación es de orden parcial
|
boolean |
esOrdenParcialEstricto()
Comprobar si la relación es de orden parcial estricto
|
boolean |
esOrdenTotal()
Comprobar si la relación es de orden total
|
boolean |
esOrdenTotalEstricto()
Comprobar si la relación es de orden total estricto
|
boolean |
esPreorden()
Comprobar si la relación es preorden
|
boolean |
esReflexiva()
Comprobar reflectividad
|
boolean |
esRelacion()
Comprueba si la correspondencia es una relación
|
boolean |
esSimetrica()
Comprobar si la relación es simétrica
|
boolean |
esSobreyectiva()
Comprueba si la correspondecia es sobreyectiva
|
boolean |
esTotal()
Comprobar si la relación es total
|
boolean |
esTransitiva()
Comprobar si la relación es transitiva
|
boolean |
esTricotomica()
Comprobar si la relación es tricotómica (irreflexiva, antisimétrica, conectada)
|
int |
hashCode() |
boolean |
homologos(I a,
F b)
Comprueba si aRb
|
java.util.List<F> |
imagen()
Conjunto imagen de la correspondencia
|
java.util.List<F> |
imagen(I item)
Devuelve los homólogos de un elemento {f(a)}
|
JMEMath.Correspondencias.Correspondencia<I,F> |
interseccion(JMEMath.Correspondencias.Correspondencia<I,F> other)
Intersección de correspondencias sobre el mismo dominio y codominio
|
JMEMath.Correspondencias.Correspondencia<F,I> |
inversa()
Correspondencia conversa, traspuesta, inversa, dual, reciproca, opuesta
|
java.util.List<I> |
maximales()
Devuelve los elementos maximales
|
F |
maximo()
Devuelve el máximo de una relación de orden o null si no existe
|
java.util.List<I> |
minimales()
Devuelve los elementos minimales
|
I |
minimo()
Devuelve el mínimo de una relación de orden o null si no existe
|
java.util.List<I> |
origen()
Conjunto origen de la correspondencia
|
JMEMath.Correspondencias.Correspondencia<I,I> |
restriccion(I[] subconjunto)
Restricción de la relación al subconjunto dado
|
JMEMath.Correspondencias.Correspondencia<I,F> |
restriccionDerecha(F[] subconjunto)
Restricción a la derecha (codominio) de la correspondencia al subconjunto dado.
|
JMEMath.Correspondencias.Correspondencia<I,F> |
restriccionIzquierda(I[] subconjunto)
Restricción a la izquierda de la correspondencia al subconjunto dado.
|
java.util.Map<java.lang.String,java.lang.Object> |
toMap() |
JMEMath.Correspondencias.Correspondencia<I,F> |
union(JMEMath.Correspondencias.Correspondencia<I,F> other)
Unión de correspondencias sobre el mismo dominio y codominio
|
JMEMath.Correspondencias.Correspondencia<I,F> |
xor(JMEMath.Correspondencias.Correspondencia<I,F> other)
Unión exclusiva de correspondencias sobre el mismo dominio y codominio
|
public I[] dominio
public F[] codominio
public int[][] ady
public final int carDom
public final int carCodom
public java.util.Map<java.lang.String,java.lang.Object> toMap()
public java.util.List<I> origen()
public java.util.List<F> imagen()
public java.util.List<F> imagen(I item) throws java.lang.ArrayIndexOutOfBoundsException
item
- elemento del dominiojava.lang.ArrayIndexOutOfBoundsException
- el elemento no está en el dominiopublic boolean homologos(I a, F b) throws java.lang.ArrayIndexOutOfBoundsException
a
- elemento del dominiob
- elemento del codominojava.lang.ArrayIndexOutOfBoundsException
- uno de los elementos no está en el dominio o
codominiopublic boolean esRelacion()
public boolean esAplicacion()
public boolean esInyectiva()
public boolean esSobreyectiva()
public boolean esBiyectiva()
public JMEMath.Correspondencias.Correspondencia<I,F> union(JMEMath.Correspondencias.Correspondencia<I,F> other) throws java.lang.IllegalArgumentException
other
- otra correspondencia/relaciónjava.lang.IllegalArgumentException
- los dominios o codominios no son igualespublic JMEMath.Correspondencias.Correspondencia<I,F> interseccion(JMEMath.Correspondencias.Correspondencia<I,F> other) throws java.lang.IllegalArgumentException
other
- otra correspondencia/relaciónjava.lang.IllegalArgumentException
- los dominios o codominios no son igualespublic JMEMath.Correspondencias.Correspondencia<I,F> xor(JMEMath.Correspondencias.Correspondencia<I,F> other) throws java.lang.IllegalArgumentException
other
- otra correspondencia/relaciónjava.lang.IllegalArgumentException
- los dominios o codominios no son igualespublic JMEMath.Correspondencias.Correspondencia<I,F> complementaria()
public JMEMath.Correspondencias.Correspondencia<F,I> inversa()
public <T> JMEMath.Correspondencias.Correspondencia<T,F> composicion(JMEMath.Correspondencias.Correspondencia<T,I> other) throws java.lang.IllegalArgumentException, JMEInterruptedException
other
- [g]java.lang.IllegalArgumentException
- codominio de [g] debe ser igual al dominio de [f]JMEInterruptedException
- si el hilo se interrumpepublic JMEMath.Correspondencias.Correspondencia<I,F> restriccionIzquierda(I[] subconjunto) throws java.lang.IllegalArgumentException
subconjunto
- conjunto restrición del dominio dadojava.lang.IllegalArgumentException
- la restricción no está contenida en el dominiopublic JMEMath.Correspondencias.Correspondencia<I,F> restriccionDerecha(F[] subconjunto) throws java.lang.IllegalArgumentException
subconjunto
- conjunto restrición del codominio dadojava.lang.IllegalArgumentException
- la restricción no está contenida en el codominiopublic boolean esContenida(JMEMath.Correspondencias.Correspondencia<I,F> extension) throws java.lang.IllegalArgumentException
extension
- correspondencia "mayor"java.lang.IllegalArgumentException
- dominios o codominios no son igualespublic java.util.List<java.lang.Object[]> aPares()
public JMEMath.Correspondencias.Correspondencia<I,I> restriccion(I[] subconjunto) throws java.lang.IllegalArgumentException, java.lang.IllegalStateException
subconjunto
- conjunto restrición del dominio y codominio dadosjava.lang.IllegalArgumentException
- [subset] must be contained in the domain setjava.lang.IllegalStateException
- no es relaciónpublic boolean esReflexiva() throws java.lang.IllegalStateException
java.lang.IllegalStateException
- no es relaciónpublic boolean esIrreflexiva() throws java.lang.IllegalStateException
java.lang.IllegalStateException
- no es relaciónpublic boolean esSimetrica() throws java.lang.IllegalStateException
java.lang.IllegalStateException
- no es relaciónpublic boolean esAntisimetrica() throws java.lang.IllegalStateException
java.lang.IllegalStateException
- no es relaciónpublic boolean esAsimetrica() throws java.lang.IllegalStateException
java.lang.IllegalStateException
- no es relaciónpublic boolean esTransitiva() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es relaciónJMEInterruptedException
- si el hilo se interrumpepublic boolean esIntransitiva() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es relaciónJMEInterruptedException
- si el hilo se interrumpepublic boolean esAntitransitiva() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es relaciónJMEInterruptedException
- si el hilo se interrumpepublic boolean esCircular() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es relaciónJMEInterruptedException
- si el hilo se interrumpepublic boolean esConectada() throws java.lang.IllegalStateException
java.lang.IllegalStateException
- no es relaciónpublic boolean esTotal() throws java.lang.IllegalStateException
java.lang.IllegalStateException
- no es relaciónpublic boolean esDependencia() throws java.lang.IllegalStateException
java.lang.IllegalStateException
- no es relaciónpublic boolean esPreorden() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es relaciónJMEInterruptedException
- si el hilo se interrumpepublic boolean esEquivalencia() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es relaciónJMEInterruptedException
- si el hilo se interrumpepublic boolean esOrdenParcial() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es relaciónJMEInterruptedException
- si el hilo se interrumpepublic boolean esOrdenTotal() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es relaciónJMEInterruptedException
- si el hilo se interrumpepublic boolean esOrdenParcialEstricto() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es relaciónJMEInterruptedException
- si el hilo se interrumpepublic boolean esOrdenTotalEstricto() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es relaciónJMEInterruptedException
- si el hilo se interrumpepublic boolean esTricotomica() throws java.lang.IllegalStateException
java.lang.IllegalStateException
- no es relaciónpublic java.util.List<I> maximales() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es un orden o no es una relaciónJMEInterruptedException
- si el hilo se interrumpepublic java.util.List<I> minimales() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es un orden o no es una relaciónJMEInterruptedException
- si el hilo se interrumpepublic F maximo() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es un orden o no es una relaciónJMEInterruptedException
- si el hilo se interrumpepublic I minimo() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es un orden o no es una relaciónJMEInterruptedException
- si el hilo se interrumpepublic boolean esAcotadaSuperiormente() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es un orden o no es una relaciónJMEInterruptedException
- si el hilo se interrumpepublic boolean esAcotadaInferiormente() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es un orden o no es una relaciónJMEInterruptedException
- si el hilo se interrumpepublic boolean esAcotada() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es un orden o no es una relaciónJMEInterruptedException
- si el hilo se interrumpepublic java.util.List<java.util.List<I>> conjuntoCociente() throws java.lang.IllegalStateException, JMEInterruptedException
java.lang.IllegalStateException
- no es una relación de equivalenciaJMEInterruptedException
- si el hilo se interrumpe en #esEquivalenciapublic JMEMath.Correspondencias.Correspondencia<I,F> clausuraReflexiva() throws java.lang.IllegalStateException
java.lang.IllegalStateException
- no es una relaciónpublic JMEMath.Correspondencias.Correspondencia<I,F> clausuraSimetrica() throws java.lang.IllegalStateException
java.lang.IllegalStateException
- no es una relaciónpublic int hashCode()
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object