9 resultados para retículos
Resumo:
176 p.
Resumo:
120 p.
Resumo:
Nas últimas décadas, um grande número de processos têm sido descritos em termos de redes complexas. A teoria de redes complexas vem sendo utilizada com sucesso para descrever, modelar e caracterizar sistemas naturais, artificias e sociais, tais como ecossistemas, interações entre proteínas, a Internet, WWW, até mesmo as relações interpessoais na sociedade. Nesta tese de doutoramento apresentamos alguns modelos de agentes interagentes em redes complexas. Inicialmente, apresentamos uma breve introdução histórica (Capítulo 1), seguida de algumas noções básicas sobre redes complexas (Capítulo 2) e de alguns trabalhos e modelos mais relevantes a esta tese de doutoramento (Capítulo 3). Apresentamos, no Capítulo 4, o estudo de um modelo de dinâmica de opiniões, onde busca-se o consenso entre os agentes em uma população, seguido do estudo da evolução de agentes interagentes em um processo de ramificação espacialmente definido (Capítulo 5). No Capítulo 6 apresentamos um modelo de otimização de fluxos em rede e um estudo do surgimento de redes livres de escala a partir de um processo de otimização . Finalmente, no Capítulo 7, apresentamos nossas conclusões e perspectivas futuras.
Resumo:
Estabelecemos uma condição suficiente para a preservação dos produtos finitos, pelo reflector de uma variedade de álgebras universais numa subvariedade, que é, também, condição necessária se a subvariedade for idempotente. Esta condição é estabelecida, seguidamente, num contexto mais geral e caracteriza reflexões para as quais a propriedade de ser semi-exacta à esquerda e a propriedade, mais forte, de ter unidades estáveis, coincidem. Prova-se que reflexões simples e semi-exactas à esquerda coincidem, no contexto das variedades de álgebras universais e caracterizam-se as classes do sistema de factorização derivado da reflexão. Estabelecem-se resultados que ajudam a caracterizar morfismos de cobertura e verticais-estáveis em álgebras universais e no contexto mais geral já referido. Caracterizam-se as classes de morfismos separáveis, puramente inseparáveis e normais. O estudo dos morfismos de descida de Galois conduz a condições suficientes para que o seu par kernel seja preservado pelo reflector.
Resumo:
Pós-graduação em Ciências Biológicas (Biologia Celular e Molecular) - IBRC
Resumo:
La computación basada en servicios (Service-Oriented Computing, SOC) se estableció como un paradigma ampliamente aceptado para el desarollo de sistemas de software flexibles, distribuidos y adaptables, donde las composiciones de los servicios realizan las tareas más complejas o de nivel más alto, frecuentemente tareas inter-organizativas usando los servicios atómicos u otras composiciones de servicios. En tales sistemas, las propriedades de la calidad de servicio (Quality of Service, QoS), como la rapídez de procesamiento, coste, disponibilidad o seguridad, son críticas para la usabilidad de los servicios o sus composiciones en cualquier aplicación concreta. El análisis de estas propriedades se puede realizarse de una forma más precisa y rica en información si se utilizan las técnicas de análisis de programas, como el análisis de complejidad o de compartición de datos, que son capables de analizar simultáneamente tanto las estructuras de control como las de datos, dependencias y operaciones en una composición. El análisis de coste computacional para la composicion de servicios puede ayudar a una monitorización predictiva así como a una adaptación proactiva a través de una inferencia automática de coste computacional, usando los limites altos y bajos como funciones del valor o del tamaño de los mensajes de entrada. Tales funciones de coste se pueden usar para adaptación en la forma de selección de los candidatos entre los servicios que minimizan el coste total de la composición, basado en los datos reales que se pasan al servicio. Las funciones de coste también pueden ser combinadas con los parámetros extraídos empíricamente desde la infraestructura, para producir las funciones de los límites de QoS sobre los datos de entrada, cuales se pueden usar para previsar, en el momento de invocación, las violaciones de los compromisos al nivel de servicios (Service Level Agreements, SLA) potenciales or inminentes. En las composiciones críticas, una previsión continua de QoS bastante eficaz y precisa se puede basar en el modelado con restricciones de QoS desde la estructura de la composition, datos empiricos en tiempo de ejecución y (cuando estén disponibles) los resultados del análisis de complejidad. Este enfoque se puede aplicar a las orquestaciones de servicios con un control centralizado del flujo, así como a las coreografías con participantes multiples, siguiendo unas interacciones complejas que modifican su estado. El análisis del compartición de datos puede servir de apoyo para acciones de adaptación, como la paralelización, fragmentación y selección de los componentes, las cuales son basadas en dependencias funcionales y en el contenido de información en los mensajes, datos internos y las actividades de la composición, cuando se usan construcciones de control complejas, como bucles, bifurcaciones y flujos anidados. Tanto las dependencias funcionales como el contenido de información (descrito a través de algunos atributos definidos por el usuario) se pueden expresar usando una representación basada en la lógica de primer orden (claúsulas de Horn), y los resultados del análisis se pueden interpretar como modelos conceptuales basados en retículos. ABSTRACT Service-Oriented Computing (SOC) is a widely accepted paradigm for development of flexible, distributed and adaptable software systems, in which service compositions perform more complex, higher-level, often cross-organizational tasks using atomic services or other service compositions. In such systems, Quality of Service (QoS) properties, such as the performance, cost, availability or security, are critical for the usability of services and their compositions in concrete applications. Analysis of these properties can become more precise and richer in information, if it employs program analysis techniques, such as the complexity and sharing analyses, which are able to simultaneously take into account both the control and the data structures, dependencies, and operations in a composition. Computation cost analysis for service composition can support predictive monitoring and proactive adaptation by automatically inferring computation cost using the upper and lower bound functions of value or size of input messages. These cost functions can be used for adaptation by selecting service candidates that minimize total cost of the composition, based on the actual data that is passed to them. The cost functions can also be combined with the empirically collected infrastructural parameters to produce QoS bounds functions of input data that can be used to predict potential or imminent Service Level Agreement (SLA) violations at the moment of invocation. In mission-critical applications, an effective and accurate continuous QoS prediction, based on continuations, can be achieved by constraint modeling of composition QoS based on its structure, known data at runtime, and (when available) the results of complexity analysis. This approach can be applied to service orchestrations with centralized flow control, and choreographies with multiple participants with complex stateful interactions. Sharing analysis can support adaptation actions, such as parallelization, fragmentation, and component selection, which are based on functional dependencies and information content of the composition messages, internal data, and activities, in presence of complex control constructs, such as loops, branches, and sub-workflows. Both the functional dependencies and the information content (described using user-defined attributes) can be expressed using a first-order logic (Horn clause) representation, and the analysis results can be interpreted as a lattice-based conceptual models.
Resumo:
Hoy en día, los sistemas middleware de publicar-suscribir con la filtración de mensajes basado en contenido tiende a ser popularizado, y un sistema como este requiere codificar su mensaje a la combinación de varios elementos que se encuentran en los conjuntos no-interseccionados. Varios predicados posibles en los dominios de esos conjuntos forman un filtro, y el núcleo de algoritmo filtrado es seleccionar filtros adaptados tan pronto como sea posible. Sin embargo, el conjunto, que está formado por los filtros, contiene la extremadamente fuerte indeterminación y distensibilidad, lo que restringe el algoritmo filtrado. Por la resolución de la distensibilidad, se estudió la característica del conjunto de filtros en álgebra, y sabía que es un retículo específico. Por lo tanto, se intenta usar el carácter, el cual los retículos forman un conjunto parcialmente ordenado (o poset, del inglés partially ordered set) con límites, para reducir el tamaño de conjunto de filtros (compresión equivalente). Por estas razones, es necesario implementar un contenedor abstracto de retículo, y evaluar su desempeño tanto en la teoría, como en la práctica, para la solución de la distensibilidad del conjunto de filtros. Retículo (Lattice) es una estructura importante de Álgebra Abstracta, comúnmente se utiliza para resolver el problema teórico, y apenas de ser un contenedor abstracto en la ciencia de software, como resultado de su implementación compleja que proviene de su trivialidad en álgebra. Y por eso se hace difícil mi trabajo. Con el fin de evitar la teoría compleja del sistema práctico, simplemente introduce su núcleo algoritmo, el algoritmo de conteo, y esto llevó a cabo con el problema - la distensibilidad del conjunto de filtros. A continuación, se investigó la solución posible con retículos en la teoría, y se obtuvo el diseño de la implementación, normas para las pruebas xUnit y par´ametros para la evaluación. Por último, señalamos el entorno, el resultado, el análisis y la conclusión de la prueba de rendimiento.
Resumo:
Logic programming (LP) is a family of high-level programming languages which provides high expressive power. With LP, the programmer writes the properties of the result and / or executable specifications instead of detailed computation steps. Logic programming systems which feature tabled execution and constraint logic programming have been shown to increase the declarativeness and efficiency of Prolog, while at the same time making it possible to write very expressive programs. Tabled execution avoids infinite failure in some cases, while improving efficiency in programs which repeat computations. CLP reduces the search tree and brings the power of solving (in)equations over arbitrary domains. Similarly to the LP case, CLP systems can also benefit from the power of tabling. Previous implementations which take ful advantage of the ideas behind tabling (e.g., forcing suspension, answer subsumption, etc. wherever it is necessary to avoid recomputation and terminate whenever possible) did not offer a simple, well-documented, easy-to-understand interface. This would be necessary to make the integratation of arbitrary CLP solvers into existing tabling systems possible. This clearly hinders a more widespread usage of the combination of both facilities. In this thesis we examine the requirements that a constraint solver must fulfill in order to be interfaced with a tabling system. We propose and implement a framework, which we have called Mod TCLP, with a minimal set of operations (e.g., entailment checking and projection) which the constraint solver has to provide to the tabling engine. We validate the design of Mod TCLP by a series of use cases: we re-engineer a previously existing tabled constrain domain (difference constraints) which was connected in an ad-hoc manner with the tabling engine in Ciao Prolog; we integrateHolzbauer’s CLP(Q) implementationwith Ciao Prolog’s tabling engine; and we implement a constraint solver over (finite) lattices. We evaluate its performance with several benchmarks that implement a simple abstract interpreter whose fixpoint is reached by means of tabled execution, and whose domain operations are handled by the constraint over (finite) lattices, where TCLP avoids recomputing subsumed abstractions.---ABSTRACT---La programación lógica con restricciones (CLP) y la tabulación son extensiones de la programación lógica que incrementan la declaratividad y eficiencia de Prolog, al mismo tiempo que hacen posible escribir programasmás expresivos. Las implementaciones anteriores que integran completamente ambas extensiones, incluyendo la suspensión de la ejecución de objetivos siempre que sea necesario, la implementación de inclusión (subsumption) de respuestas, etc., en todos los puntos en los que sea necesario para evitar recomputaciones y garantizar la terminación cuando sea posible, no han proporcionan una interfaz simple, bien documentada y fácil de entender. Esta interfaz es necesaria para permitir integrar resolutores de CLP arbitrarios en el sistema de tabulación. Esto claramente dificulta un uso más generalizado de la integración de ambas extensiones. En esta tesis examinamos los requisitos que un resolutor de restricciones debe cumplir para ser integrado con un sistema de tabulación. Proponemos un esquema (y su implementación), que hemos llamadoMod TCLP, que requiere un reducido conjunto de operaciones (en particular, y entre otras, entailment y proyección de almacenes de restricciones) que el resolutor de restricciones debe ofrecer al sistema de tabulación. Hemos validado el diseño de Mod TCLP con una serie de casos de uso: la refactorización de un sistema de restricciones (difference constraints) previamente conectado de un modo ad-hoc con la tabulación de Ciao Prolog; la integración del sistema de restricciones CLP(Q) de Holzbauer; y la implementación de un resolutor de restricciones sobre retículos finitos. Hemos evaluado su rendimiento con varios programas de prueba, incluyendo la implementación de un intérprete abstracto que alcanza su punto fijo mediante el sistema de tabulación y en el que las operaciones en el dominio son realizadas por el resolutor de restricciones sobre retículos (finitos) donde TCLP evita la recomputación de valores abstractos de las variables ya contenidos en llamadas anteriores.
Resumo:
En el ámbito de las estructuras ordenadas, Ø. Ore introdujo en 1944 el concepto de conexión de Galois como un par de funciones antítonas entre dos conjuntos parcialmente ordenados, generalizando así la teoría de polaridades entre retículos completos. Este concepto supone una generalización de la correspondencia subgrupo-subcuerpo que se describe en el clásico Teorema Fundamental de la Teoría de Galois, de ahí el origen del término. Años más tarde, J. Schmidt mantuvo la terminología de conexión de Galois, pero cambió las funciones antítonas por funciones isótonas, lo cual favoreció la aplicabilidad de este concepto a Computación. El término adjunción fue introducido en 1958 por D. M. Kan. Originalmente fueron definidas en un contexto categórico y tal vez debido a esto, pueden encontrarse gran cantidad de ejemplos de adjunciones en varias áreas de investigación, que van desde las más teóricas a las más aplicadas. En 1965, Lotfi Zadeh introduce la Teoría de Conjuntos Difusos. En su trabajo se aborda definitivamente el problema del modelado matemático de la ambigüedad, con la definición de conjunto difuso X en un universo U como una aplicación X: U→ [0,1] que asocia a cada elemento u del conjunto U un valor del intervalo real [0,1] y donde X(u) representa el grado de pertenencia de u al conjunto difuso X. El término conexión de Galois difusa fue introducido por R. Belohlávek como un par de aplicaciones definidas entre los conjuntos de conjuntos difusos definidos sobre dos universos. Desde entonces, en el ámbito de la lógica difusa, se pueden encontrar numerosos artículos en los cuales se estudian las conexiones de Galois difusas desde un punto de vista algebraico y abstracto. El objetivo principal de este trabajo es estudiar y caracterizar, a partir de una aplicación f: A→ B desde un conjunto A dotado con una determinada estructura hasta un conjunto B no necesariamente dotado de estructura, las situaciones en las cuales se pueda definir una estructura en B similar a la de A, de forma que además se pueda construir una aplicación g: B→ A tal que el par (f,g) sea una adjunción (conexión de Galois isótona). Se considera el conjunto A dotado con un orden parcial y se realiza la descomposición canónica de la función f a través del conjunto cociente de A con respecto a la relación núcleo. Partiendo del problema inicial de deducir las condiciones necesarias y suficientes para la existencia de un orden parcial en B y para la definición de un adjunto por la derecha de f, con esta descomposición canónica se pretende dividir la cuestión en tres problemas más simples, a saber, la construcción de un orden en el codominio y un adjunto por la derecha para cada una de las aplicaciones que forman parte de la citada descomposición. Esto resuelve la cuestión planteada para el caso de funciones que son sobreyectivas. Para el caso general, es necesario analizar previamente cómo extender una relación de preorden definida sobre un subconjunto de un conjunto dado a dicho conjunto, así como la definición de un adjunto por la derecha para la inclusión natural del subconjunto dentro del conjunto. Se continua la investigación considerando el conjunto A dotado con un preorden, en este caso la ausencia de la propiedad antisimétrica hace necesario utilizar la denominada relación p-núcleo, que es el cierre transitivo de la unión de la relación núcleo y la relación de equivalencia núcleo simétrico. Asimismo, el hecho de que no se tenga unicidad para el máximo o el mínimo de un subconjunto, conduce a trabajar con relaciones definidas en el conjunto de partes de un conjunto (concretamente, con el preorden de Hoare). Todo ello hace aumentar la dificultad en la búsqueda de las condiciones necesarias y suficientes para la existencia de una relación de preorden en el codominio y la existencia de un adjunto por la derecha. Se finaliza esta sección con el análisis de la unicidad del adjunto por la derecha y del orden parcial (preorden) definido sobre el codominio. Después del estudio anterior, se introducen los denominados operadores y sistemas de ≈-cierre en conjuntos preordenados y se analiza la relación existente entre ambos (que deja de ser biunívoca, como sucede en el caso de órdenes parciales). Se trabaja con la noción de compatibilidad respecto a una relación de equivalencia y se caracteriza la construcción de adjunciones entre conjuntos preordenados en términos de la existencia de un sistema de ≈-cierre compatible con la relación núcleo. En una segunda parte de la tesis, se aportan las definiciones de las nociones de adjunción difusa, co-adjunción difusa y conexiones de Galois difusas por la derecha y por la izquierda entre conjuntos con preórdenes difusos. Además se presentan las distintas caracterizaciones de los conceptos anteriormente señalados, así como las relaciones entre ellos. Se aborda la construcción de adjunciones entre conjuntos con órdenes difusos, utilizando de nuevo la relación núcleo, en su versión difusa, y la descomposición canónica de la función de partida respecto a ella. El teorema principal de esta sección recoge una caracterización para la definición de una relación difusa de orden sobre el codominio B y un adjunto por la derecha para f:(A, ρA) → B donde (A, ρA) es un conjunto con un orden difuso. El estudio del problema anterior entre conjuntos con preórdenes difusos, hace necesario trabajar con la relación difusa denominada p-núcleo. También es preciso definir un preorden difuso en el conjunto de partes de un conjunto para describir las condiciones bajo las que es posible la construcción de una adjunción. Se finaliza proponiendo la definición de sistema de cierre en un conjunto con un preorden difuso y algunas caracterizaciones más manejables. También se trabaja con los operadores de cierre definidos en un conjunto con un preorden difuso y se analiza la relación con los sistemas de cierre. Todo ello encaminado a caracterizar la construcción de un adjunto por la derecha y un preorden difuso sobre el codominio B de una de una aplicación f:(A, ρA) → B, donde ρA es un preorden difuso sobre A.