Term

Z Wikipedii, wolnej encyklopedii

Term (formuła nazwowa) – wyrażenie składające się ze zmiennych oraz symboli funkcyjnych o dowolnej argumentowości (w tym o argumentowości 0, czyli stałych) z pewnego ustalonego zbioru.

W wielu dziedzinach matematyki używa się określenia term na oznaczenie napisów (wyrażeń) formalnych, które mogą być traktowane jako nazwy na obiekty matematyczne. W większości przypadków znaczenie to można przedstawić jako termy w pewnym języku pierwszego rzędu, opisane poniżej.

Termy w logice matematycznej[edytuj | edytuj kod]

Termy języków pierwszego rzędu[edytuj | edytuj kod]

Niech będzie alfabetem języka pierwszego rzędu Tak więc jest zbiorem stałych, symboli funkcyjnych i symboli relacyjnych (predykatów). Każdy z tych symboli ma jednoznacznie określony charakter (tzn. wiadomo czy jest to stała, czy symbol funkcyjny czy też predykat) i każdy z symboli funkcyjnych i predykatów ma określoną arność (która jest dodatnią liczbą całkowitą). Język ma też ustaloną nieskończoną listę zmiennych (zwykle )[1].

Termy języka to elementy najmniejszego zbioru takiego, że:

  • wszystkie stałe i zmienne należą do
  • jeśli i jest -arnym symbolem funkcyjnym, to

Przykłady[edytuj | edytuj kod]

  • Język teorii grup to gdzie jest binarnym symbolem funkcyjnym. Przykładami termów tego języka są:
oraz a także
  • Język ciał uporządkowanych to gdzie są binarnymi symbolami funkcyjnymi a jest binarnym symbolem relacyjnym. Przykładowe termy tego języka to
   

Języki wyższych rzędów[edytuj | edytuj kod]

W analogiczny sposób wprowadza się termy w językach wyższych rzędów, a także w bardziej skomplikowanych logikach.

Termy boole’owskie[edytuj | edytuj kod]

W teorii forsingu rozważa się termy boole’owskie wprowadzane następująco. Niech będzie zupełną algebrą Boole’a. Przez indukcję po wszystkich liczbach porządkowych definiujemy zbiory złożone z termów boole’owskich rangi :

  • – gdy jest liczbą graniczną
  • jest zbiorem wszystkich funkcji których dziedzina jest podzbiorem a wartości należą do algebry

Kładziemy też

Termy boole’owskie są nazwami na obiekty w rozszerzeniach generycznych modeli teorii mnogości w tym sensie, że każdy element rozszerzenia jest interpretacją pewnego termu przez filtr generyczny.

Termy w informatyce[edytuj | edytuj kod]

W sztucznej inteligencji term służy do reprezentowania bytów w programowaniu w logice (na przykład w języku Prolog).

W Prologu można wyróżnić kilka rodzajów termów:

  • Liczby

Wszystkie wersje Prologu pozwalają na używanie liczb całkowitych (integer), np. 625, +12, -23. Większość wersji Prologu pozwala również na liczby zmiennoprzecinkowe, np. 6.43, -.245.

  • Atomy

Atomy są stałą, która nie ma numerycznej wartości. Istnieją trzy warianty, w których można zapisać atom: a) sekwencja jednej lub wielu liter, numeru i podkreślnika zaczynająca się od małej litery, np. agata, dzisiaj_jest_sobota, a32_BCD b) sekwencja znaków zamkniętych w pojedynczy cudzysłów, może zawierać spacje, np. 'Dzisiaj jest sobota', '32abc', 'dzisiaj-jest-sobota' c) sekwencja jednego lub wielu znaków specjalnych: + - * / > < = & # @ :

  • Zmienne

W zapytaniu zmienna jest używana do określenia termu, np. zmienna X może oznaczać atom - pies, liczbę - 23, term złożony czy listę. Nazwa zmiennej jest oznaczona przez dowolną sekwencję jednej lub więcej liter, cyfr, podkreślenia, zaczynając od wielkiej litery lub podkreślnika, np. X, Autor, Osoba_A, _123A. Zmienna składająca się z pojedynczego podkreślnika jest nazywana zmienną anonimową.

  • Termy złożone

Termy te mają fundamentalne znaczenie przy pisaniu programów Prolog. Term złożony zaczyna się od atomu, znanego tutaj jako funktor. Po funktorze następuje sekwencja argumentów, które są ujęte w nawiasy. functor(term_1, term_2, ... ,term_n), n>=1 Liczbę argumentów w termie złożonym nazywa się arnością.

  • Listy

Listy często traktuje się jako specjalny typ termu złożonego albo osobny typ w zależności od uczonego. Listy zawierają argumenty zamknięte w nawiasy kwadratowe, oddzielone przecinkami, np. [pies, kot, y, [p,q,R], miasto(poznan)]. Lista bez elementów jest pustą listą, którą zapisuje się w ten sposób [][2].

Często spotykaną interpretacją termu jest drzewo etykietowane.

Przypisy[edytuj | edytuj kod]