5 research outputs found

    Nearly Optimal Separation Between Partially and Fully Retroactive Data Structures

    Get PDF
    Since the introduction of retroactive data structures at SODA 2004, a major unsolved problem has been to bound the gap between the best partially retroactive data structure (where changes can be made to the past, but only the present can be queried) and the best fully retroactive data structure (where the past can also be queried) for any problem. It was proved in 2004 that any partially retroactive data structure with operation time T_{op}(n,m) can be transformed into a fully retroactive data structure with operation time O(sqrt{m} * T_{op}(n,m)), where n is the size of the data structure and m is the number of operations in the timeline [Demaine et al., 2004]. But it has been open for 14 years whether such a gap is necessary. In this paper, we prove nearly matching upper and lower bounds on this gap for all n and m. We improve the upper bound for n << sqrt m by showing a new transformation with multiplicative overhead n log m. We then prove a lower bound of min {n log m, sqrt m}^{1-o(1)} assuming any of the following conjectures: - Conjecture I: Circuit SAT requires 2^{n - o(n)} time on n-input circuits of size 2^{o(n)}. This conjecture is far weaker than the well-believed SETH conjecture from complexity theory, which asserts that CNF SAT with n variables and O(n) clauses already requires 2^{n-o(n)} time. - Conjecture II: Online (min,+) product between an integer n x n matrix and n vectors requires n^{3 - o(1)} time. This conjecture is weaker than the APSP conjectures widely used in fine-grained complexity. - Conjecture III (3-SUM Conjecture): Given three sets A,B,C of integers, each of size n, deciding whether there exist a in A, b in B, c in C such that a + b + c = 0 requires n^{2 - o(1)} time. This 1995 conjecture [Anka Gajentaan and Mark H. Overmars, 1995] was the first conjecture in fine-grained complexity. Our lower bound construction illustrates an interesting power of fully retroactive queries: they can be used to quickly solve batched pair evaluation. We believe this technique can prove useful for other data structure lower bounds, especially dynamic ones

    Lower Bounds on Retroactive Data Structures

    Get PDF
    We prove essentially optimal fine-grained lower bounds on the gap between a data structure and a partially retroactive version of the same data structure. Precisely, assuming any one of three standard conjectures, we describe a problem that has a data structure where operations run in O(T(n,m)) time per operation, but any partially retroactive version of that data structure requires T(n,m)?m^{1-o(1)} worst-case time per operation, where n is the size of the data structure at any time and m is the number of operations. Any data structure with operations running in O(T(n,m)) time per operation can be converted (via the "rollback method") into a partially retroactive data structure running in O(T(n,m)?m) time per operation, so our lower bound is tight up to an m^o(1) factor common in fine-grained complexity

    ESTRUTURAS DE DADOS RETROATIVAS: UM MAPEAMENTO SISTEMÁTICO

    Get PDF
    Given the miniaturization of electronic devices and the amount ofdata processed by them, the applications developed need to beefficient in terms of memory consumption and temporalcomplexity. Retroactive data structures are data structures inwhich it is possible to make a modification in the past and observethe effect of this modification on its timeline. These datastructures are used in some geometric problems and in problemsrelated with graphs, such as the minimum path problem indynamic graphs. However, the implementation of these datastructures in an optimized way is not trivial. In this scenario, thiswork presents the results of a research related to retroactive datastructures, in order to compare the performance of theimplementations proposed by several authors in relation to thetrivial implementations of these data structures. The researchmethod used was the study of the articles related to retroactivedata structures, from a systematic mapping, and the performanceanalysis of these data structures coded in C++ language. The datastructures identified in this study presented better results in termsof space consumption and processing time in relation to theirimplementations by brute force, but, in some cases, with highconstants.Face à miniaturização dos aparelhos eletrônicos e devido àquantidade de dados processados por eles, as aplicaçõesdesenvolvidas necessitam ser eficientes em termos de consumo dememória e complexidade temporal. Estruturas de dadosretroativas são estruturas em que é possível realizar umamodificação no passado e observar o efeito dessa modificação emsua linha temporal. Essas estruturas são utilizadas em algunsproblemas geométricos e em outros relacionados a grafos, como oproblema do caminho mínimo em grafos dinâmicos. Contudo, aimplementação dessas estruturas de maneira otimizada nemsempre é trivial. Diante desse cenário, este trabalho apresenta osresultados de uma pesquisa relacionada a estruturas de dadosretroativas, visando comparar o desempenho das implementaçõespropostas por variados autores em relação às implementaçõestriviais dessas estruturas. O método de pesquisa adotado foi oestudo dos artigos relacionados às estruturas de dados retroativas,a partir de um mapeamento sistemático, e a análise dedesempenho dessas estruturas codificadas na linguagem C++. Asestruturas identificadas nesse mapeamento apresentaram melhoresresultados no que tange ao consumo de espaço e tempo deprocessamento com relação às suas implementações por forçabruta, porém, em alguns casos, com constantes altas

    16th Scandinavian Symposium and Workshops on Algorithm Theory: SWAT 2018, June 18-20, 2018, Malmö University, Malmö, Sweden

    Get PDF

    LIPIcs, Volume 248, ISAAC 2022, Complete Volume

    Get PDF
    LIPIcs, Volume 248, ISAAC 2022, Complete Volum
    corecore