In this issue I want to spotlight two important new releases. Jeff Shallit's The Logical Approach to Automatic Sequences introduces the software Walnut for deciding first-order statements in Buchi arithmetic. This software has been used to prove hundreds of results in combinatorics on words. Can the junior's dream of replacing the pumping lemma with a similar software be far behind? Data Science in Context is a new textbook by Alfred Spector, Peter Norvig, Chris Wiggins and Jeannette Wing that addresses the breadth, oppportunities and perils of the field. Its new feature is a sevenelement analysis rubric for determining data science's applicability to a proposed application. Please consider reviewing these books or a new release that you find important and of interest to the TCS community.
We show that a well-known family of deterministic finite automata can be used to distinguish distinct binary strings of the same length from every start state. Further, we establish almost matching lower and upper bounds on the number of states of such automata necessary to achieve this type of separation. Our result improves the currently best known linear upper bound for arbitrary DFA.
The separating words problem seeks to determine the asymptotic growth of the minimum number of states of a deterministic finite automaton that accepts x but rejects y , where x and y are given strings. We study three natural variants of this problem which impose additional constraints on the start and/or end states: ∀ -separation requires different end states for every common start state; ∀ 2 -separation requires different end states for every pair of start states; and ∀ 2 01 -separation requires fixed different end states for every pair of start states. For distinct strings of the same length, we establish exact bounds on the number of states for ∀ 2 - and ∀ 2 01 -separation, as well as a logarithmic lower bound and a linear upper bound for ∀ -separation.
We construct a web tool to extract geographical locations from web pages returned by the Google search engine for an arbitrary query and display those locations on an interactive map. The tool was used to track the worldwide Vietnamese diaspora using Our Lady of LaVang as proxy for presence of a Vietnamese community, but it could potentially have other applications.
We have transformed our first programming course from an introduction to programming, to an introduction to Computer Science. We have done this in part by broadening the topics discussed. We now incorporate discussion of social topics like privacy and humanitarian technology, and "big ideas in CS" like how the Internet and databases work. We have also embedding many of our programming examples in applications from fields like biology and psychology. The other major feature of this course is that we have separated teaching problem-solving from teaching a programming language. In lecture, we discuss problem-solving with high-level programming constructs like conditionals and loops, using only pseudocode. In our new lab section, students are taught how to translate those ideas into C++ code. This allows us to free the initial learning of problem-solving from the complications of a language like C++. A unique feature of these changes is that it is possible to offer multiple different labs, in different languages, in conjunction with the same lecture section. It is our intention to start offering labs in different languages starting in Fall 2016. Our primary goal in making these changes was to improve recruitment and retention, especially among women. We also hoped to improve the course's utility as an elective for non-majors. Our evaluation of a pilot offering suggests that the re-designed course is likely to improve retention, without negatively impacting programming knowledge. We have now completely adopted the re-designed course, and are continuing to gather data to evaluate the new design.
Given an n-tape automaton M with a one-way read-only head per tape which is delimited by an end marker $ and a nonnegative integer k, we say that M is weakly k-synchronized if for every n-tuple x=(x1, …, xn) that is accepted, there is an accepting computation on x such that no pair of input heads, neither of which is on $, are more than k tape cells apart at any time during the computation. When a head reaches the marker, it can no longer move. As usual, an n-tuple x=(x1, …, xn) is accepted if M eventually reaches the configuration where all n heads are on $ in an accepting state. We look at the following problems: (1) Given an n-tape automaton M, is it weakly k-synchronized for a given k (for some k)? and (2) Given an n-tape automaton M, does there exist a weakly k-synchronized automaton for a given k (for some k) M′ such that L(M′)=L(M)? In an earlier paper [1], we studied the case of multitape finite automata (NFAs). Here, we investigate the case of multitape pushdown automata (NPDAs), multitape Turing machines, and other multitape models. The results that we obtain contrast those of the earlier results and involve some rather intricate constructions.
Motivated by applications to verification problems in string manipulating programs, we look at the problem of whether the heads in a multitape automaton are synchronized. Given an n-tape pushdown automaton M with a one-way read-only head per tape and a right end marker $ on each tape, and an integer k ≥ 0, we say that M is k-synchronized if at any time during any computation of M on any input n-tuple (x 1, …, x n ) (whether or not it is accepted), no pair of input heads that are not on $ are more than k cells apart. This requirement is automatically satisfied if one of the heads has reached $. Note that an n-tuple (x 1, …, x n ) is accepted if M reaches the configuration where all n heads are on $ and M is in an accepting state. The automaton can be deterministic (DPDA) or nondeterministic (NPDA) and, in the special case, may not have a pushdown stack (DFA, NFA). We obtain decidability and undecidability results for these devices for both one-way and two-way versions. We also consider the notion of k-synchronized one-way and two-way multihead automata and investigate similar problems.
It is known that two-way pushdown automata ate more powerful than two-way counter machines. The result is also true for the case when the pushdown store and counter are reversal-bounded. In contrast, we show that two-way reversal-bounded pushdown automata over bounded languages (i.e., subsets of w 1 * ... w * for some nonnull words w 1 ..., wk) are equivalent to two-way reversal-bounded counter machines. We also show that, unlike the unbounded input case, two-way reversal-bounded pushdown automata over bounded languages have decidable emptiness, equivalence and containment problems.
We continue the study of the computational power of synchronized alternating Turing machines (SATM), introduced in [Hro86, Slo87, Slo88a, Slo88b] to allow communication via synchronization among processes of alternating Turing machines. We compare the classes of languages accepted by the four main classes of space-bounded synchronized alternating Turing machines obtained by adding or removing off-line capability and nondeterminism (1SUTM(S(n)), SUTM(S(n)), 1SATM(S(n)), and SATM(S(n))). We show various strict inclusions, equalities, and incomparabilities between these classes and those accepted by plain and modified alternating Turing machines. For deterministic synchronized alternating finite automata with at most k processes (1DSA(k)FA and DSA(k)FA) we establish a tight hierarchy on the number of processes for the one-way case, namely ℒ(1DSA(n)FA) ⊂ℒ(1DSA(n + 1)FA) for all n>0, and show that ℒ(1DFA(2)) - ∪ _k = 1^∞ℒ(DSA(k)FA) 0̸ , where DFA(k) denotes deterministic k-head finite automata. Finally we investigate closure properties under Boolean operations for some of these classes of languages.
We look at some decision questions concerning two-way counter machines and obtain the strongest decidable results to date concerning these machines. In particular, we show that the emptiness, containment, and equivalence problems are decidable for two-way counter machines whose counter is reversal-bounded (i.e., the counter alternates between increasing and decreasing modes at most a fixed number of times). We use this result to give a simpler proof of a recent result that the emptiness, containment, and equivalence problems for two-way reversal-bounded pushdown automata accepting bounded languages (i.e., subsets of w 1 * ... w k * for some nonnull words w 1,...,wk) are decidable. Other applications concern decision questions about simple programs. Finally, we show that nondeterministic two-way reversal-bounded multicounter machines are effectively equivalent to finite automata on unary languages, and hence their emptiness, containment, and equivalence problems are decidable also.
We argue that the synchronized alternating finite automaton (introduced by Hromkovič et al.) is a viable model for studying the communication complexity of parallel computation. This motivates our study of the classes of languages accepted by synchronized alternating finite automata (SAFA) whose messages are bounded in length by a function m(n). We establish the lower bounds on m(n) for some types of SAFA to accept nonregular languages; we also show that these bounds are tight. Next, we establish dense hierarchies of these machines on m(n), and finally we give a characterization of NP in terms of bounded-message multihead SAFA.
We show that recurrence equations, even the simple ones, are not likely to admit fast parallel algorithms, i.e., not likely to be solvable in polylogarithmic time using a polynomial number of processors. We also look at a restricted class of recurrence equations and show that this class is solvable in O(log2 n) time, but not likely in O(log n) time.
We introduce a complexity-theoretic model for studying computational security of binary image watermarking systems. Our model restricts algorithms used by the sender and the attacker to the class H of hiding functions. These are efficiently computable functions that preserve visual fidelity of the input image. Security of watermarking systems is to be established with complexity results about hiding functions. We also survey current theories of vision and propose an automata-theoretic model for visual fidelity called c-similarity. Finally we propose a candidate for H based on c-similarity and show that it is robust and contains infinitely many functions computable in polynomial time.
We define transparent watermarking algorithms as those whose expected distortions of input images are at most c log l, as measured under the average absolute difference metric (l is the range of possible pixel values, and c is a positive constant.) Our definition is based on asymptotic analyses of the expected distortions caused by two prototypical watermarking methods generally considered as transparent: the Patchwork and NEC methods. We also propose some shift-resistant variants of these distortion metrics that incorporate alignment techniques used in DNA string comparisons. Experiments show that these new distortion metrics yield much smaller values when a small number of columns are deleted.
Paraconsistent information is information that is incomplete and/or inconsistent. A data model for representing and manipulating paraconsistent information in relational databases has recently been developed. Algebraic operators on the underlying paraconsistent relations of this model are generalizations of the usual ones on ordinary relations. However, unlike in the ordinary case, a DBMS based on paraconsistent relations must be capable of handling infinite relations. In this paper, we show this necessity and identify classes of infinite paraconsistent relations whose members can be effectively represented and manipulated. We show that the classes of REGULAR and, under different conditions, CONTEXT-SENSITIVE as well as PSPACE paraconsistent relations are such. We also show that the CONTEXT-FREE and R.E. classes do not have the desired properties, while P, NP, LOGSPACE and NLOGSPACE also probably do not. These results help identify the kinds of relational DBMS that can be constructed for handling incomplete and inconsistent information about tuples.
A language is universally polynomial if its intersection with every NP-complete language is in P. Such a language would provide an automatic method for generating easy instances of intractable problems. In this note, we give a complete characterization of universally polynomial languages that are context-free, answering an open question in [4].