avgörbarhetsproblemet

das Entscheidungsproblem – frågan om det går att avgöra ifall ett matematiskt eller logiskt påstående är sant eller falskt på ett mekaniskt sätt (alltså med en algoritm) som ger rätt svar för alla mate­matiska och logiska påståenden. – Pro­blemet fick sitt namn av den tyska ma­te­ma­tik­ern David Hilbert (1862—1942, se Wikipedia – se också Hilberts paradox), men andra filosofer och matematiker hade tänkt i samma banor tidigare. Ett annat sätt att se på saken är att fråga ifall det finns ett logiskt‑matematiskt språk som kan användas för att formulera varje tänkbart problem, och som också kan användas för att räkna ut lösningen. Kurt Gödels† ofullständighets­sats från 1931 visade indirekt att det inte går att avgöra, och något senare visade Alan Turing† och Alonzo Church†, obe­ro­ende av varandra och på olika sätt, att svaret på frågan är nej. Turings bevis innehöll beskrivningen av det som numera kallas för Turingmaskiner. (Avgörbarhetsproblemet kallas också för avgörandeproblemet.)

[matematik och logik] [ändrad 6 juni 2017]

XOR

  1. – i programmering: ett logiskt villkor som betyder ”A eller B, men inte båda” – se exklusiv disjunktion;
  2. – en enkel form av kryp­te­ring som bygger på det logiska villkoret XOR. Texten som ska kodas (klartexten) i binär form jämförs med en nyckel i binär form, bit för bit. Nyckeln är en serie ettor och nollor som vid behov repeteras tills den når slutet av texten. Om det finns samma tecken i klartexten och i nyckeln sätts en etta i kryptotexten, om det är olika tecken sätts en nolla. Detta räknas som en mycket enkel och riskabel form av kryptering.

[kryptering] [logik] [programmering] [ändrad 21 mars 2020]

boolesk

Tecknat porträtt av George Boole (färglagt).
George Boole (från Wikipedia).

(Boolean)boolesk logik, boolesk algebra – ett sätt att uttrycka logiska problem som matematik. – Boolesk algebra är upp­kallad efter George Boole (mer om honom längre ner). – Två saker gör att boolesk logik passar för datorteknik:

  1. – boolesk algebra löser logiska pro­blem med matematiska metoder. Om du kan beskriva ett problem med den booleska algebrans termer så kan du sedan lösa det mekaniskt, vilket inne­bär att du kan programmera en dator att lösa problemet;
  2. – boolesk algebra representerar logikens två sanningsvärden sant och falskt med den binära matematikens två siffror 1 och 0. Det passar bra för datorer, eftersom datorernas logiska kretsar (processorerna) också arbetar med två lägen, och av. Datorernas kretsar är komplice­rade tillämp­ningar av boolesk algebra.

– Boolesk algebra är inget konstigt: det är ett sätt att beskriva vanlig matematik och logik som råkar passa in på hur datorer är konstruerade. I boolesk algebra används villkoren AND (konjunktion), OR (disjunktion) och NOT (negation). Det finns fler logiska villkor än AND, OR och NOT, till exempel IF THEN (implikation) och XOR (exklusiv disjunktion). Men de tre booleska termerna räcker. Alla andra logiska villkor kan nämligen ut­tryckas med kom­binationer av AND, OR och NOT samt parenteser. – Boolesk algebra är uppkallad efter logikern George Boole (1815—1864). Han strävade efter att för­ena formell logik och matematik i ett gemensamt symbolspråk. Booles principer kom till användning när de första datorerna konstruerades. – Boolesk uttalas ”bolsk” med O som i sol. – Mer i Wikipedia.) – Det engelska ordet Boolean används ibland i betydelsen binär, alltså när svaret på en fråga är ja eller nej, sant eller falskt, ett eller noll – inga mellanvärden. – Språkligt: Benämningen booleansk förekommer också på svenska, men den är onödig, eftersom det inte finns något som heter booleanism.

[logik] [personer] [programmering] [ändrad 26 juli 2021]

disjunktion

logikens term för eller. – Eller har två betydelser, nämligen ”A eller B eller båda” och ”A eller B men inte båda”. I det vanliga språket brukar det vara uppen­bart vilket man menar. ”De tänker semestra i Kroatien eller i Costa Rica” betyder troligen inte att de tänker åka till båda länderna. Men i pro­gram­me­ring måste man vara tydlig, så man skiljer mellan in­klu­siv dis­junk­tion (A eller B eller båda) och ex­klu­siv dis­junk­tion (A eller B men inte båda). Om det bara står disjunktion betyder det inklusiv disjunktion. – I pro­gram­me­ring står för­kort­ningen OR för in­klu­siv dis­junk­tion och för­kort­ningen XOR för ex­klu­siv dis­junk­tion. I formell logik skriver man A∨B eller A∥B (två vertikala streck) för inklusiv disjunktion. – Läs också om NOR.

[logik] [programmering] [ändrad 8 juni 2017]

ekvivalens

i formell logik: av två påståenden är antingen båda två sanna eller båda två falska. Detta kallas också för materiell ekvivalens. Varför de två påståendena har samma sanningsvärde spelar ingen roll. De behöver inte säga samma sak. Med logiska symboler skrivs det A⇔B, AB (tecknet har tre streck) eller A↔B, vilket kan utläsas ”A är sant om och bara om B också är sant”. På engelska förekommer benämningen if and only if, vilket ofta för­kortas IFF. På svenska före­kommer också förkortningen OMM. Se också XNOR. – Materiell ekvi­valens bör skiljas från logisk ekvivalens, som innebär att två på­stå­enden säger samma sak. – En sanningsvärdetabell för materiell ekvivalens ser ut så här:

– Antingen är båda påståendena A och B sanna eller också är båda falska (AB) :

A B AB
sant sant sant
sant falskt falskt
falskt sant falskt
falskt falskt sant

[logik] [programmering] [ändrad 4 april 2017]

eller-förval

(default to OR) – om sökningar: det att sök­ningar med två eller flera ord antas inne­hålla villkoret OR (se in­klu­siv dis­junk­tion). – Exempel: skriver man hund katt i sök­fältet tolkas det som hund ELLER katt. Det innebär att man får träff på do­ku­ment som inne­håller (1) ordet hund, men inte katt, (2) ordet katt, men inte hund, och på (3) do­ku­ment med båda orden. Det brukar ge många fler träffar än alternativet, och‑förval, som ofta används i sökmotorer. Eller‑förval är van­lig­are i sökningar i do­ku­ment, till exempel i Adobe Reader.

[logik] [sökningar] [sökmotorer] [ändrad 14 augusti 2018]