iAccount based inUnited States
About this account
- Account based in
- United States
- Connected via
- United States App Store
Account-level information from X, not a live location or the device used for a specific post.
ALT Many cloud-based applications are organized as loosely coupled microservices, where invoking a service's API triggers a cascade of APIs across many services and leads to inter-service exchange of API parameters and output responses. Current tools for monitoring microservice safety properties have limited expressiveness for properties that describe the flow of data through API calls. To this end, we present SafeNom, a specification and monitoring framework for microservices based on nominal languages. SafeNom policies can express both the desired order of API calls and how the data carried in requests and responses should or should not flow between the APIs. Policies are enforced using a nominal automaton-based distributed runtime monitor which can be applied in a blackbox and non-invasive manner, without access to the service implementation and without making changes to the service implementation. Our experiments show that our monitor can efficiently enforce rich data-aware properties
ALT We study weighted edit distance between two strings of total length n, where edit costs are induced by an arbitrary metric. For equal-length inputs, Kuszmaul (2019) gave an O(nᵟ)-approximation with Õ(n²⁻ᵟ) running time for every fixed 0 < δ < 1. We give the first constant-factor approximation for weighted edit distance over arbitrary metrics in strongly subquadratic running time. For every 0 < ε ≤ 1, our randomized algorithm runs in Õ(n⁷/⁴/ε⁸) time and returns a (3+ε)-approximation with probability at least 1-n⁻¹⁰. The algorithm allows unequal input lengths and places no bound on the ratio between edit costs.
ALT The classical Weisfeiler-Leman algorithm (also known as the 2-dimensional Weisfeiler-Leman algorithm) is a simple combinatorial algorithm that was originally designed as a heuristic for the graph isomorphism problem. However, it has also numerous connections to other areas such as algebraic graph theory, logics, proof complexity, combinatorial optimization and machine learning. We prove that the classical Weisfeiler-Leman algorithm terminates after 5(n-1) iterations. This improves over the previous best upper bound of O(n log n) by Lichter, Ponomarenko and Schweitzer [LICS 2019], and asymptotically matches the known lower bound of Ω(n) by Fürer [ICALP 2001]. Additionally, building on our results for the 2-dimensional case, we obtain an improved upper bound of O(nᵏ⁻¹/(k-2)! + nᵏ⁻²) on the number of iterations performed by the k-dimensional Weisfeiler-Leman algorithm, for every k ≥ 3. Our arguments actually hold for a larger class of sequences of colorings of k-tuples; in this larger cla
ALT We survey selected open problems in the theory of synchronizing automata, centered around the famous Äerný conjecture. A deterministic finite automaton is called synchronizing if it admits a reset word whose action maps all states to a single state. The Äerný conjecture states that every synchronizing automaton with n states possesses a reset word of length at most (n-1)². We discuss avoiding words, compressing a state with another, synchronization of a (given or any) subset, complexity of deciding the synchronizability, average reset threshold, and linear-algebraic methods. Some new auxiliary results are also presented.
ALT Current basic block profiling techniques obtain the count of executions of each basic block in a program using dynamic instrumentation. These profiling counters create runtime overheads and also require the execution of the program, which, for large input sizes, can take substantial time. We propose symbolic program profiling that generates symbolic formulae for a basic block's count with inputs as the independent variables. Our technique is limited in applicability to a certain class of programs, namely machine learning (ML) kernels. We implement our technique in the LLVM compiler and evaluate it on 78 ML operators from 50 different ML models. These operators are generated by TVM, a machine learning compiler. Our symbolic profiles deliver exactly the same results as dynamic instrumentation for 73 out of 78 kernels with a median speedup of 15093x.