15,296 research outputs found
Logic Programming Applications: What Are the Abstractions and Implementations?
This article presents an overview of applications of logic programming,
classifying them based on the abstractions and implementations of logic
languages that support the applications. The three key abstractions are join,
recursion, and constraint. Their essential implementations are for-loops, fixed
points, and backtracking, respectively. The corresponding kinds of applications
are database queries, inductive analysis, and combinatorial search,
respectively. We also discuss language extensions and programming paradigms,
summarize example application problems by application areas, and touch on
example systems that support variants of the abstractions with different
implementations
Python for education: the exact cover problem
Python implementation of Algorithm X by Knuth is presented. Algorithm X finds
all solutions to the exact cover problem. The exemplary results for
pentominoes, Latin squares and Sudoku are given.Comment: 13 pages, 4 figures, 3 table
Strategies and Algorithms of Sudoku
This paper discusses different strategies for the game of Sudoku and how those strategies relate to other problem solving techniques while also attempting to use those other techniques in a way that improves the strategies for Sudoku. This includes a thorough analysis of the general algorithm and an algorithm that is formed by the Occupancy Theorem and Preemptive Sets. This paper also compares these algorithms that directly relate to Sudoku with algorithms to similar combinatorial problems such as the Traveling Salesman problem and more. With the study of game theory becoming more popular, these strategies have also been shown to help students in various ways in the classroom. To understand Sudoku on a deeper level, this paper demonstrates ways to model a puzzle by using permutation matrices and different symmetries
Research Design, as Independent of Methods
Objectives
•Readers of this chapter should be in a better position to:
•Understand the process of research design
•Place their own and others work within a full cycle or programme of ongoing research
•Understand why good research almost always involves a mixture of evidence
•Defend themselves from those who want numbers and text to be enemies rather than allies
•Argue that good research is more ethical for society than poor researc
- …