Está en la página 1de 6

UNIVERSIDAD NACIONAL DE SAN

AGUSTÍN

Logica Computacional

Segundo Trabajo

Integrantes: CUI:
Segundo Trabajo

Índice
1. CZT: Community Z Tools 2
1.1. CZT con Eclipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.1. Caracteristicas . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.2. Navegación y edición de especificaciones Z . . . . . . . . . . . 3
1.2. Agenda de Cumpleaños . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2. Especificación de Software 5
2.1. Agenda de Cumpleaños . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1
Segundo Trabajo

1. CZT: Community Z Tools


Community Z Tools (CZT) es un marco Java de código abierto para crear herra-
mientas de métodos formales para Lenguajes Z. También incluye un conjunto de he-
rramientas para analizar, revisar, transformar e imprimir especificaciones Z estándar
en formatos LATEX, Unicode o XML.

1.1. CZT con Eclipse

CZT proporciona un complemento de Eclipse que permite a los usuarios de Eclipse


editar las especificaciones de Z en un entorno familiar. Es compatible con las marcas
LaTeX y Unicode de Z, y la marca Unicode proporciona un entorno de edición
WYSIWYG para Z. Uno de los principales problemas para editar una especificación
Z de Unicode es insertar un carácter Unicode especı́fico de Z en el editor, pero
el panel ZCharMap proporcionado por este complemento facilita la inserción de
caracteres Z y plantillas con un solo clic. También proporciona una amplia variedad
de funciones de navegación, trazado, plegado y referencia cruzada, además de una
constante verificación de fondo para detectar la sintaxis y los errores de tipo en la
especificación Z

1.1.1. Caracteristicas

Como especificamos anteriormente el objetivo es proporcionar un entorno de desarro-


llo amigable para las especificaciones Z. Algunas de las caracteristicas importantes
son:
Comprobación de tipo continua: la especificación Z se verifica automáticamente
durante la edición y cualquier problema se resalta en el documento.
Nos lleva a la declaración
Color de sintaxis.
Elementos de documento plegables.
Asistencia de contenido.
Esquema de Especificación
Vista de caracteres Z
Convertir especificación entre formatos alternativos

2
Segundo Trabajo

Generación de condiciones de verificación: genere condiciones de verificación


(teoremas) para la especificación activa e insértelos en la especificación.
Fuente CZT: una fuente que admite caracteres especiales CZT se carga y utiliza
automáticamente para las especificaciones de Z Unicode.
Entre otros.

1.1.2. Navegación y edición de especificaciones Z

Panel de mapa de caracteres Z: En la parte inferior de la ventana, puede ver


un panel que contiene una tabla de caracteres. Cada clic en un carácter de la tabla
dará como resultado la inserción de los contenidos correspondientes en el editor
activo en ese momento, pero no se puede hacer clic en la columna izquierda porque

3
Segundo Trabajo

se usa para mostrar la categorı́a de los caracteres en la fila correspondiente. El panel


elegirá automáticamente el contenido correcto para insertar en función del marcado
y la codificación de la especificación en el editor. El panel también puede mostrarte
un panel flotante que contiene una descripción de un personaje cuando 3 se encuentra
sobre él.
Reporte de Problemas : Cuando se edita una especificación de Z, se analiza cons-
tantemente en segundo plano sin interrumpir la edición. Una vez que se encuentran
problemas, como errores o advertencias, se informan de inmediato al usuario de va-
rias maneras. En particular, hay una vista de Problemas en la parte inferior de la
ventana, en la que puede ver una lista de problemas encontrados. También puede
ver algunas cruces rojas en ambos lados del editor. Las cruces a la izquierda indican
que hay errores correspondientes a las lı́neas en las que se colocan. Las cruces a la
derecha indican los mismos errores, pero corresponden a la posición relativa de todo
el documento. En la esquina superior derecha hay un indicador especial que muestra
la cantidad de problemas encontrados en las especificaciones.

1.2. Agenda de Cumpleaños

4
Segundo Trabajo

2. Especificación de Software

2.1. Agenda de Cumpleaños

[NOMBRE,FECHA]
AgendaCumple
contactos : P NOMBRE
cumple : NOMBRE → 7 FECHA
contactos = domcumple

IniciarAgendaCumple
AgendaCumple
cumple = ∅
contactos = ∅

AgregarCumple
∆AgendaCumple
nombre? : NOMBREfecha? : FECHA
nombre? 6∈ contactos
cumple 0 = cumple ∪ {(nombre? 7→ fecha?)}

BuscarCumple
ΞAgendaCumple
nombre? : NOMBRE
fecha! : FECHA
nombre? ∈ contactos
fecha! = cumple(nombre?)

Recordatorio
ΞAgendaCumple
hoy? : FECHA
targetas! : P NOMBRE
targetas! = {n : NOMBRE | cumple(n) = hoy?}

También podría gustarte