SearcharxivSearch

arXiv subjects

Fabio Romano

Publications and source records attributed to Fabio Romano.

3 recordsLinked to original sources

How to program a never-losing chess engine

This article proposes a model, based on graph theory, to represent a variety of two-player games of perfect information, such as chess and checkers. I then provide a backtracking minimax algorithm to find, if it exists, a perfect game strategy (game resolution), and subsequently a way to exploit that algorithm to determine a weaker condition: the existence of a strategy to never lose (always reach at least a draw). Of course, this does not mean that in practice the algorithm can find such a strategy in a short time, but here we are only concerned with formally proving that this is possible, at least theoretically.

cs.GT

A square root algorithm faster than Newton's method for multiprecision numbers, using floating-point arithmetic

In this paper, an optimized version of classical Bombelli's algorithm for computing integer square roots is presented. In particular, floating-point arithmetic is used to compute the initial guess of each digit of the root, following similar ideas to those used in "The Art of Computer Programming" Vol. 2, p. 4.3.1 for division. A program with an implementation of the algorithm in Java is also presented, and its running time is compared with that of the algorithm provided by the Java standard library, which uses the Newton's method. From tests, the algorithm presented here turns out to be much faster.

cs.MS

On the complexity of SAT

In this paper, we prove that no deterministic algorithm can solve SAT in polynomial time in the number of boolean variables.

cs.CC