Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where José Carlos Cotta is active.

Publication


Featured researches published by José Carlos Cotta.


Archive | 1988

Engineering Grammars with Prolog

Helder Coelho; José Carlos Cotta

Within this chapter we explain how to write natural language grammars expressed in clausal logic. The notion of definite clause grammars (DCG’s) is behind this as a paradigm for organizing the knowledge required in understanding, which allows efficient parsing. In some exercises syntactic and semantic knowledge are applied concurrently to fill a logical structure that contains all the information for semantic interpretation. The syntax plays a guiding role in the processing, and the logical structure describes the meaning of the corresponding sentence by assembling well-formed formulae belonging to a logical system for representing a subset of the natural language considered.


Archive | 1988

Building Up with Prolog

Helder Coelho; José Carlos Cotta

Why use Prolog for writing interpreters, when C is so much better? The experience built up upon the DECsystem-10 Prolog interpreter and compiler establishes evidence that both programming languages are not comparable, in particular in what concerns machine efficiency. However, the following exercises put the case for Prolog as a tool for helping designers, i.e. as an aid in the learning process.


Archive | 1988

Text Formatting with Prolog

Helder Coelho; José Carlos Cotta

This chapter illustrates the use of Prolog features for word processing. The problems were selected from the book by (Welsh; Elder 1979), an introduction to PASCAL. The idea is to apply Prolog in a rather devious application domain, in what concerns the intended capabilities of logic programming. The general aim consists in testing whether Prolog can be compared to PASCAL in a matter where this programming language is quite able. Also, another intention is involved: to check how Prolog behaves in commercial applications, too involved with file manipulation, and often related to symbolic processing. We are convinced that such exercises are rather desirable because if Prolog goes commercial diverse situations arise in the design of real programs, and some knowledge about the ways Prolog copes and interacts with other special purpose programming languages is required.


Archive | 1988

Proving with Prolog

Helder Coelho; José Carlos Cotta

Theorem proving is one of those activities able to help us achieve a better understanding of how a symbolic programming language can cope with reasoning tasks. Also, it teaches us how to have in a program a useable map of specific knowledge, and how to simulate intelligent behavior.


Archive | 1988

Drawing with Prolog

Helder Coelho; José Carlos Cotta

The use of knowledge brings the programmer to an understanding of concepts like feedback, recursion, state and so on. In this chapter the examples involve search through a large number of alternatives. This feature is especially well suited for problems that can be modelled as graph search ones. This is also the basis for an approach to planning and simulation models using logic programming (see Chapters 13 and 18). The purpose is also to support the programmer with graphics in order to put forward the underlying intelligent machinery and to show how programs reason.


Archive | 1988

Designing with Prolog

Helder Coelho; José Carlos Cotta

The purpose of this chapter is to exhibit some representative exercises of knowledge engineering. The first exercise has to do with civil engineering, the second deals with architecture, the third with pharmacology, and the fourth with sequences of numbers. Behind all the exercises there is a combinatorial problem.


Archive | 1988

Seeing with Prolog

Helder Coelho; José Carlos Cotta

Seeing and understanding what is seen is quite suitable for deep problem solving and program organization. This chapter introduces an exercise illustrating facts about vision processing and knowledge structures that are relevant for planning.


Archive | 1988

Doing Arithmetic with Prolog

Helder Coelho; José Carlos Cotta

Prolog is not a suitable language for expressing arithmetic calculations, or number crunching, because is not efficient. However, the following exercises show that it is possible to program arithmetic expressions based upon the Prolog arithmetic built-in predicates.


Archive | 1988

One or Two Things About Prolog

Helder Coelho; José Carlos Cotta

Prolog is different from most programming languages in that it does not presuppose a von Neumann architecture and does not have assignment as the basic underlying operation (Warren 1981c). The primitive unit is not an instruction, but a theorem of first order logic, called a clause. Variables inside clauses are universally quantified and may be substituted by well-formed formulas, but predicates cannot be quantified. Unlike conventional languages such as FORTRAN and PASCAL, Prolog is well suited to parallel processing machines because program evaluations can be run in any order without regard to sequence.


Archive | 1988

Searching with Prolog

Helder Coelho; José Carlos Cotta

Exploring and finding alternative paths through a network or a tree structure is often necessary while solving problems. Two issues become relevant: search, focusing on the methods for exploring the structures that describe the problem domains, and control, focusing on how the problem solver selects those methods and shifts attention among its subprocesses.

Collaboration


Dive into the José Carlos Cotta's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Ronald M. Lee

Florida International University

View shared research outputs
Researchain Logo
Decentralizing Knowledge