Categorie:Wartaal

Uit Werkplaats
Ga naar: navigatie, zoeken
Markering in de code:
{{Standaardfout|Wartaal|commentaar}}

Wartaal is een taaluiting waaraan geen betekenis kan worden toegekend omdat elke poging, er een syntaxboom en een semantiek aan toe te kennen leidt tot inconsistentie of tot nieuwe onzekerheden.


Waartaal is verwant met Bullshit.


Wartaal in natuurlijke taal

In een professionele omgeving gaat men ervan uit dat iedereen de vaktaal kent en correct gebruikt. Daar is wartaal bijzonder ernstig. In ons vak bijvoorbeeld doen we moeite om een aantal begrippen helder te krijgen en termen voor deze begrippen af te spreken: specificatie, bewering, formule, implicatie, aanname, correctheidsstelling, waar maken, etc. Ook al is het geen formele taal, deze termen hebben types die bepalen wat je wel en wat je niet mag zeggen. Een specificatie kun je niet bewijzen, een stelling wel. Een bewering kan gevolg zijn van een andere bewering, een bewijs niet.

Hier enkele ware, niet-warrige beweringen uit dit wereldje, die iedere professional geacht is te kennen:

  • Een implicatie heeft een premisse (soms ook aanname genoemd) en een conclusie.
  • Als de premisse van een implicatie onwaar is, is de implicatie als geheel waar.
  • Dat een implicatie waar is, betekent niet noodzakelijk, dat haar conclusie waar is.
  • In specificaties van artefacten (dus ook van onderdelen van artefacten) komen meestal implicaties voor.
  • Uit een tegenspraak je alles concluderen.
  • Een specificatie zegt wat een artefact waar moet maken.
  • Een bewering kan waar zijn.
  • Een stelling kan correct zijn.
  • Aannames in de specificatie van het geheel in een correctheidsstelling, dat zijn formules die op de linker zijde van een implicatiepijl op de rechter zijde van de "grote" implicatiepijl van de correctheidsstelling staan.
  • Een sub-formule van een sub-formule van een stelling kan nooit "correct" zijn, en zeker niet "volgens de stelling".

Voor de achtergrond van dit alles is het vrijwel onmogelijk, er achter te komen wat hiermee bedoeld is:

Graag commentaar: In onze specificaties van de onderdelen maken we gebruik van enkele implicaties. Dit betekent dat uit een onware aanname een ware conclusie kan volgen. Dit heeft tot gevolg dat in onze specificatie van het geheel er bepaalde aannames onwaar zijn, maar wel correct zijn volgens de stelling. Hoe kunnen we dit voorkomen?

Waarschijnlijk is iets zinvols bedoeld. Maar termen zijn anders gebruikt dan afgesproken, constructies zijn niet typeerbaar en dubbelop ("een ware concluse kan volgen").


Wartaal in formele logica

∀t:T, ∃x:L, (x > 0) <-> inspuiten cilinder_links x t (t + 1) /\ uitpompen cilinder_rechts x t (t + 1) 
                         \/ inspuiten cilinder_rechts x t (t + 1) /\ uitpompen cilinder_links x t (t + 1) <->
                         ∀t2:T, ((t < t2) /\ (t2 < t + 150) -> start attractie t2) \/ ∃t2:T, ((t < t2) /\ (t2 < t + 10) -> stop attractie t2)
  • Hier ontbreken veel noodzakelijke haakjes, maar welke? De opmaak van de formule geeft geen uitsluitsel wat bedoeld zou kunnen zijn.
  • Er staan overbodige haakjes die extra verwarring scheppen: waarom vond de schrijver die nodig? Had hij soms een hele andere grammatica in zijn hoofd?
  • Er staan heel wat spaties die de leesbaarheid juist bemoeilijken door de formules onnodig breed te maken zonder bij het lezen te helpen. Vergelijk
(t < t2) /\ (t2 < t + 10)

met:

(t<t2)/\(t2<t+10)
  • Een opeenstapeling van dubbele pijlen A<->B<->C is vrijwel altijd fout, zie  Taalfout: taalkitsch . Wat er staat, kan dus niet bedoeld zijn. Maar wat is wel bedoeld? De opmaak geeft geen uitsluitsel.

Interpretaties van bovenstaande wartaal

Dirk van der Linden

Wie schrijft nog meer eens het bovenstaande uit zoals ze denken dat het zou moeten zijn, en vergelijkt dat eens met dit om te kijken of er semantisch compleet verschillende dingen uit wartaal kunnen komen?

<source lang="coq"> forall t:T, exists x:L, (x>0) <-> ( (inspuiten cilinder_links x t (t+1) /\ uitpompen cilinder_rechts x t (t+1)) \/ (inspuiten cilinder_rechts x t (t+1) /\ uitpompen cilinder_links x t (t+1)) ) <-> forall t2:T, ( (t<t2 /\ t2<(t+150)) -> start attractie t2 \/ exists t2:T, ((t<t2 /\ t2<(t+10)) -> stop attractie t2) ). </source> Volgens deze specificatie is het zo dat voor alle momenten t er een x van een bepaald type is wat groter dan 0 is dan en slechts dan als er (aan een bepaalde disjunctie wordt voldaan) dan en slechts dan (voor alle momenten t2 aan een bepaalde disjunctie wordt voldaan).

 Taalfout: Het taalkitschprobleem is hiermee nog niet verholpen. Er staan nog steeds twee dubbele pijlen met impliciete haakjes die waarschijnlijk anders zijn dan de schrijver bedoelt. 

Deze categorie bevat geen pagina’s of media.