Abstract

A general crossword grid generation is considered an NP-complete problem and theoretically it could be a good candidate to be used by cryptography algorithms. In this article, we propose a new algorithm for generating perfect crosswords grids (with no black boxes) that relies on using tries data structures, which are very important for reducing the time for finding the solutions, and offers good opportunity for parallelisation, too. The algorithm uses a special tries representation and it is very efficient, but through parallelisation the performance is improved to a level that allows the solution to be obtained extremely fast. The experiments were conducted using a dictionary of almost 700,000 words, and the solutions were obtained using the parallelised version with an execution time in the order of minutes. We demonstrate here that finding a perfect crossword grid could be solved faster than has been estimated before, if we use tries as supporting data structures together with parallelisation. Still, if the size of the dictionary is increased by a lot (e.g., considering a set of dictionaries for different languages—not only for one), or through a generalisation to a 3D space or multidimensional spaces, then the problem still could be investigated for a possible usage in cryptography.

Highlights

  • Crosswords are known as a form of intellectual game, and they are widespread throughout the world

  • We propose a solution based on tries, which are a special kind of tree used especially for storing strings, and where there is one node for every common prefix; the final strings are represented through the path from the root to the leaf nodes [4]

  • The dictionary-based construction of such a perfect crossword grid imposes the need to search for words in the dictionary, and so choosing the correct method to choose possible words is essential in order to ensure a good performance

Read more

Summary

Introduction

Crosswords are known as a form of intellectual game, and they are widespread throughout the world. We intend to investigate the problem of generating all the perfect crosswords grids, for a given keyword, which is to be placed in the first column This could be considered simpler than the finding a solution for a given grid with white and black cells, but it depends much more on the grid size and the given keyword. It is possible to not obtain any solution, or to have many solutions for different grid sizes (the number of columns could be allowed to vary) This special case was chosen in order to analyse it in the larger context of their possible usage in a public-key cryptography system [3]: The public and private keys could be based on the words of a perfect grid:.

Related Work
Problem Specification
Brute-Force Method
Backtracking-Based Methods
A Search Algorithm with Predefined List of Prefixes
Other Variations
Tries-Based Solutions
The Trie Solution
Parallel Implementation
Analysis and Experiments
Conclusions and Further Work
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.