7 research outputs found

    Subject Index Volumes 1–200

    Get PDF

    Author index to volumes 301–400

    Get PDF

    Computing congruences and endomorphisms for algebras of type (2m, 1n)

    Get PDF
    Atualmente a principal aplicação de software para semigrupos é a package de GAP chamada Semigroups [29], em articulação com a package Smallsemi [13]. O GAP [17] é um sistema e linguagem de programação para álgebra discreta computacional. Embora estas packages ofereçam muitas opções de cálculo e forneçam uma biblioteca de todos os semigrupos até o tamanho 8, várias operações de semigrupos importantes não estão disponíveis. Em parte, isto deve-se ao facto de a arquitetura subjacente ser voltada para a teoria de grupos e os semigrupos frequentemente requerem técnicas algorítmicas que são mais próximas das empregadas na Álgebra Universal do que daquelas usadas em grupos. Existem maneiras de construir álgebras a partir das existentes (produtos diretos etc.), mas a operação inversa é crítica: decompor uma dada álgebra em outras menores. Este tipo de decomposição é especialmente importante em semigrupos, pois mesmo a estrutura de semigrupos muito pequenos pode ser muito obscura. Até agora não existe uma ferramenta computacional geral para decompor semigrupos. Por exemplo, o GAP já contém código para encontrar todas as congruências de classes muito particulares de semigrupos, mas está muito longe de fornecer um método geral. A situação é ainda pior em relação aos endomorfismos. O objetivo da package CREAM (Algebra CongRuences, Endomorphisms and AutomorphisMs) é resolver esta situação implementando algoritmos eficientes para calcular congruências, endomorfismos e automorfismos de álgebras do tipo (2m, 1 n). Vários algoritmos gerais (como em [15]) serão adaptados para o contexto da teoria de semigrupos e mais geralmente para álgebras do tipo (2m, 1 n ) cobrindo assim grupos e semigrupos mas também álgebras unárias e também loops, campos, anéis, semianéis, álgebras de Lie, MV-álgebras, Meadows, álgebras de lógica, etc. Estes algoritmos serão implementados em GAP. Isso incluirá as seguintes questões: • Dada uma álgebra finita A do tipo (2m, 1 n ), encontrar todas as congruências de A, pelo menos tão rápido quanto os programas existentes (ou seja, o código produzido será geral e pelo menos tão rápido quanto o código que existe para classes específicas de álgebras apenas); • Dada uma álgebra finita A do tipo (2m, 1 n ), encontrar todos os endomorfismos de A; em particular, o código deve calcular efetivamente os automorfismos de A, uma ferramenta que essencialmente existe apenas para grupos. Uma álgebra universal é uma estrutura algébrica que consiste num conjunto A e numa coleção de operações sobre A. Uma operação n-aria sobre A é uma função que tem como entrada um n-tuplo de elementos de A e retorna um elemento de A. Neste contexto só estão a ser consideradas operações com aridade 1 ou 2, i.e. operações unárias e binárias. Uma álgebra do tipo (2m, 1 n ) é uma álgebra universal com m operações binárias e n unárias. Este uso genérico da package CREAM depende de teoremas de álgebra universal. Isto tem custos, pois teoremas de tipos específicos de álgebras (e.g. grupos, semigrupos, etc) não podem ser usados para reduzir o espaço de procura e melhorar a performance. Canon e Holt [10], usaram vários algoritmos inteligentes e teoremas específicos de grupos para produzir código mais rápido que a package CREAM a calcular automorfismos de grupos com ordens maiores. Analogamente, Mitchell et al. [29] usaram teoremas da teoria de semigrupos para calcular eficazmente automorfismos e congruências de semigrupos completamente 0-simples. Mas estes estão entre os poucos casos de código GAP disponível que é mais rápido que a package CREAM que é de uso mais generalizado. Para a maioria de outras classes de álgebras de tipo (2m, 1 n ) a package CREAM é mais rápida a calcular auto[endo]morfismos/congruências. Um dos algoritmos principais implementado na package é o algoritmo de Freese descrito em [15] que calcula congruências principais para uma álgebra universal. Para chegar a esta performance a package CREAM usa uma mistura de algoritmos standard de álgebra universal juntamente com ferramentas de procura eficiente por modelos finitos de fórmulas de primeira ordem e a implementação de partes de código em C. Em geral, calcular congruências de álgebras é uma tarefa difícil. Existem vários teoremas descritivos para diferentes tipos de álgebra e algumas ferramentas computacionais para calcular congruências para álgebras finitas, mas geralmente essas ferramentas são aplicáveis a um conjunto muito específico e estreito de álgebras. O nosso objetivo era fornecer uma ferramenta eficaz para calculá-los para álgebras finitas do tipo (2m, 1 n ) abrangendo um conjunto muito amplo de álgebras, incluindo a maioria dos tipos e classes de álgebra atualmente estudados. O algoritmo usado foi o algoritmo de Freese cuja eficiência depende em muito da representação das álgebras e congruências. Em especial a representação de partições/congruências como um array é determinante na eficiência do cálculo das congruências principais uma vez que permite uma junção de blocos muito rápida, uma das operações mais utilizadas durante a execução do algoritmo de congruências. Além disso a representação usada não limita o âmbito geral das álgebras suportadas. No âmbito deste doutoramento vários algoritmos para o cálculo de automorfismos foram testados e a conclusão foi que o algoritmo mais promissor foi um algoritmo que usa invariantes das operações das álgebras para limitar os possíveis automorfismos da álgebra. Este algoritmo é usado na package Loops cuja implementação foi usada como guia tendo o seu âmbito sido expandido para suportar não só magmas mas qualquer álgebra do tipo (2 m, 1 n ). A implementação final dos algoritmos de automorfismos usando a abordagem de invariantes foi contribuída para a package CREAM por Choiwah Chow com base nas conclusões e no trabalho realizado no âmbito deste doutoramento. Dada a falta de referências sobre algoritmos para calcular endomorfismos, o algoritmo para calcular endomorfismos usado na package CREAM foi definido usando teoremas básicos de álgebra universal como o teorema do homomorfismo, para relacionar congruências, álgebras quocientes, subálgebras e endomorfismos. O algoritmo foi desenvolvido usando os algoritmos de congruências e automorfismos implementados, e uma aplicação denominada MACE4. O MACE4 [27] é uma aplicação de linha de comando que procura modelos finitos de fórmulas de primeira ordem. Embora o GAP seja adequado para prototipagem e implementação rápida de algoritmos, o código resultante não é muito rápido devido ao facto de ser uma linguagem interpretada. Reescrever o código em C permitiu melhorias surpreendentes que alcançaram uma melhoria de até 670 vezes do código GAP para o código C. Além disso, a integração com o MACE4 permite combinar a eficiência de algoritmos como [15], com um amplo conjunto de possibilidades fornecidas por uma ferramenta eficiente na procura por modelos finitos de fórmulas de primeira ordem, dando uma flexibilidade muito grande à package CREAM. A package CREAM é em média 20 vezes mais rápida no cálculo de congruências dos tipos de semigrupos muito limitados que são suportados pela função CongruencesOfSemigroups da package Semigroups que é a função mais abrangente em GAP para o cálculo de congruências. A única aplicação que possui um âmbito semelhante em termos de álgebras suportadas é a interface de linha de comando UACalc, mas faz isso em jython, sem beneficiar do ecossistema existente na plataforma GAP. Quando comparado com o UACalc, o package CREAM é consistentemente mais de 3 vezes mais rápido. Relativamente a automorfismos e endomorfismos, a comparação com outras bibliotecas/aplicativos é muito difícil, uma vez que o suporte é limitado principalmente a grupos e outras estruturas algébricas intimamente relacionadas com grupos. Para essas álgebras, o desempenho das packages GAP Loops e Sonata são comparáveis e às vezes melhores do que a package CREAM. Essas bibliotecas por vezes contam com o uso de teoremas específicos para essas álgebras. Mas apenas a package CREAM suporta a maioria das álgebras estudadas em álgebra convencional e moderna. Dada a importância das congruências, automorfismos e endomorfismos para o estudo de estruturas algébricas, espera-se que a package CREAM com seu desempenho e versatilidade possa ser uma ferramenta útil para a comunidade GAP e um amplo grupo de matemáticos. O código resultante está disponível como o pacote GAP CREAM que está totalmente documentado.While there are efficient algorithms to decompose very particular classes of semigroups, groups and quasigroups, there are no similar facilities available for the more general algebraic structures such as algebras of type (2m, 1 n ), with an arbitrary number of binary and unary operations. In this thesis, its presented the GAP package CREAM (Algebra CongRuences, Endomorphisms and AutomorphisMs) that provides efficient algorithm implementations to calculate congruences, endomorphisms and automorphisms of algebras of type (2m, 1 n ) covering groups and semigroups but also unary algebras, and loops, fields, rings, semi-rings, MV-algebras, Meadows, algebras of logic, etc. An universal algebra is an algebraic structure consisting of a set A together with a collection of operations on A. An n-ary operation on A is a function that takes n-tuple of elements from A and returns a single element of A. In the current scope are only considered operations with arity of 1 or 2, i.e. unary and binary operations. An algebra of type (2 m,1 n ) is a universal algebra with m binary and n unary operations. This general applicability of the CREAM package relies on universal algebra theorems. This comes with a cost since theorems on specific types of algebras (e.g. groups, semigroups, etc) cannot be used to reduce the search space and enhance performance. Canon and Holt, using a mix of smart algorithms and specific group theorems, produced fast code to compute automorphisms of groups that is faster than CREAM on large orders. Similarly, Mitchell et al. used semigroup theory theorems to compute in a very effective way automorphisms and congruences of completely 0-simple semigroups. But these are among the few cases of known GAP code that are faster than our general purpose package CREAM. For most other classes of algebras of type (2m, 1 n ), CREAM is faster computing auto[endo]morphisms/congruences. One core algorithm implemented in the package is Freese’s algorithm [15] that calculates principal congruences for a universal algebra. To get this performance, CREAM uses a mixture of standard universal algebra algorithms together with tools that can search efficiently for finite models of first-order formulas and the implementation of parts of the code in C

    LIPIcs, Volume 261, ICALP 2023, Complete Volume

    Get PDF
    LIPIcs, Volume 261, ICALP 2023, Complete Volum

    MS FT-2-2 7 Orthogonal polynomials and quadrature: Theory, computation, and applications

    Get PDF
    Quadrature rules find many applications in science and engineering. Their analysis is a classical area of applied mathematics and continues to attract considerable attention. This seminar brings together speakers with expertise in a large variety of quadrature rules. It is the aim of the seminar to provide an overview of recent developments in the analysis of quadrature rules. The computation of error estimates and novel applications also are described

    Generalized averaged Gaussian quadrature and applications

    Get PDF
    A simple numerical method for constructing the optimal generalized averaged Gaussian quadrature formulas will be presented. These formulas exist in many cases in which real positive GaussKronrod formulas do not exist, and can be used as an adequate alternative in order to estimate the error of a Gaussian rule. We also investigate the conditions under which the optimal averaged Gaussian quadrature formulas and their truncated variants are internal
    corecore