Temporal logic ( temporal logic ; engelsk temporal logic ) - logik , i hvis udsagn det tidsmæssige aspekt tages i betragtning. Bruges til at beskrive sekvenser af begivenheder og deres forhold langs en tidsskala.
I oldtiden blev brugen af logik i det tidsmæssige aspekt studeret af filosofferne fra den megariske skole , især Diodorus Cronus og stoikerne . Moderne symbolsk tidslogik, først konceptualiseret og formuleret i 1950'erne af Arthur Pryor [1] på grundlag af modal logik , blev mest brugt og udviklet i datalogi takket være arbejdet fra Turing-prisvinderen Amir Pnueli .
Betydningen af udsagnet: "Jeg er sulten" ændrer sig ikke med tiden, men dens sandhed kan ændre sig: på et bestemt tidspunkt kan den være sand eller falsk, men ikke begge dele. I modsætning til ikke-temporelle logikker, hvor værdien af påstande ikke ændrer sig over tid, afhænger værdien i tidslogik af, hvornår den testes. Temporal logik giver dig mulighed for at udtrykke udsagn som "Jeg er altid sulten", "Jeg er nogle gange sulten" eller "Jeg er sulten , indtil jeg spiser."
Der er to slags operatører i tidslogik : logisk og modal. ( ) bruges almindeligvis som logiske operatorer . De modale operatorer, der bruges i lineær tidslogik og beregningstrælogik, er defineret som følger.
Tekstbetegnelse | Symbolbetegnelse | Definition | Beskrivelse | Diagram |
---|---|---|---|---|
Binære operatorer | ||||
U | Indtil (stærk): skal udføres i en eller anden stat i fremtiden (eventuelt den nuværende), skal ejendommen udføres i alle stater op til (ikke inklusive) den udpegede. | |||
R
V |
|
R -udgivelse: Frigiver , hvis det er sandt, indtil det er sandt første gang (eller altid, hvis det ikke gør det). Ellers skal det blive sandt mindst én gang, før det bliver sandt første gang. | ||
Unære operatører | ||||
N
x |
N e X t: skal være sand i tilstanden umiddelbart efter den givne. | |||
F | F uture: skal blive sandt i mindst én tilstand i fremtiden. | |||
G | Globalt : skal være sandt i alle fremtidige stater. | |||
EN | A ll: Skal køre på alle grene, der starter med denne. | |||
E | Eksisterer : Der er mindst én gren, der kører. |
Ligesom de Morgans regler er der dualitetsegenskaber for tidsmæssige operatører:
Temporelle logikker bruges ofte til at udtrykke formelle verifikationskrav . For eksempel er egenskaber som "hvis en anmodning modtages, så vil der helt sikkert komme et svar på den" eller "funktionen kaldes ikke mere end én gang pr. beregning" er praktisk at formulere ved hjælp af tidsmæssige logikker. Forskellige automater bruges til at teste sådanne egenskaber, for eksempel Büchis automater til at teste egenskaber udtrykt i LTL lineær tidslogik .
Den vigtigste universelle variant af tidslogik er den modale μ-calculus ( Scott - de Bakker , 1969); den inkluderer Henessy-Milner logik og CTL* som en delmængde , og de vigtigste varianter, der bruges i datalogi - lineær tidslogik ( LTL ) og beregningstrælogik ( CTL ) - er fragmenter af CTL * .
Derudover er der andre varianter af tidslogik, der ikke kan reduceres til modal μ-regning, for eksempel interval temporal logik og metrisk tidsmæssig logik
Nogle praktiske muligheder bruger kombinationer af tidslogik med andre logikker, især den tidsmæssige handlingslogik (skabt til TLA⁺- specifikationssproget ), der forbinder tidslogik og handlingslogik .
Ordbøger og encyklopædier |
---|
Logikker | |||||||||
---|---|---|---|---|---|---|---|---|---|
Filosofi • Semantik • Syntaks • Historie | |||||||||
Logiske grupper |
| ||||||||
Komponenter |
| ||||||||
Liste over booleske symboler |