Karnaugh-diagram løser

Gratis Karnaugh-diagram løser på nett: skriv et boolsk uttrykk med to til seks variabler og få K-diagrammet med hver gruppe ringet inn og den minimale summen av produkter eller produktet av summer lest av på det.

Skriv inn et logisk uttrykk for å analysere det (støtter proposisjonell logikk, boolsk algebra)

Kun klientsiden - dataene dine forlater aldri nettleseren din

Veiledning

Klikk på en operator for å prøve eksempelet i kalkulatoren. Hver operator viser alle måtene du kan skrive den på.

Skriv et uttrykk, så legger denne Karnaugh-diagram løseren sannhetsverdiene ut på et Gray-kodet rutenett, ringer inn hver gruppe som kan slås sammen, og leser den minimale formen av dem. Den tar symboler (¬ ∧ ∨ → ↔) eller vanlig ASCII (!, &, |, ->, <->), dekker to til seks variabler og regner ut et eksakt minimum, ikke bare et godt et. Ingenting lastes opp: diagrammet bygges i nettleseren din.

Slik løser du et Karnaugh-diagram

  1. Skriv uttrykket ditt i feltet over - for eksempel (A & B) | (!A & C). Operatortastaturet setter inn symbolene hvis du helst slipper å skrive dem.
  2. Løseren leser variablene ut av uttrykket og legger sannhetsverdiene i rutenettet. Aksene er Gray-kodet (00, 01, 11, 10), slik at naboceller skiller seg i nøyaktig én variabel - og det er nettopp derfor en gruppe av dem faller sammen til ett ledd.
  3. Hver farget ring er en gruppe. Pek på eller trykk på en i tegnforklaringen for å løfte den fram i diagrammet, og merk deg dem som er markert som vesentlige: dem kan ingen minimal form utelate. En gruppe kan gå rundt kantene, og en celle kan høre til flere.
  4. Les den minimale formen nedenfor. Bytt mellom sum av produkter og produkt av summer, kopier resultatet, last det tilbake i kalkulatoren, eller eksporter diagrammet som LaTeX eller TikZ.

Hva løseren gir deg

  • Hver gruppe ringet inn og farget, med de vesentlige markert og leddet hver enkelt etterlater.
  • En minimal form som virkelig er minimal: dekningen søkes eksakt, ikke valgt grådig, så selv et syklisk diagram kommer ut i kortest mulig form.
  • Sum av produkter eller produkt av summer - grupper enerne eller nullene - fra det samme diagrammet.
  • Diagrammet som LaTeX, enten som en enkel tabell eller tegnet på nytt i TikZ med ringene og tegnforklaringen.
  • Også sannhetstabellen, egenskapene og de ekvivalente formene, hvis du åpner det samme uttrykket i den fullstendige kalkulatoren.
Åpne logikkalkulatoren

Et gjennomregnet eksempel

Diagrammet for (((A∧B)∧C)∨((A∧B)∧¬C))∨((¬A∧B)∧C). Tre celler er sanne, og de dekkes av to grupper på to som overlapper i én av dem - hele metoden i miniatyr: variabelen som skifter inne i en gruppe faller ut av leddet, og en celle kan dekkes to ganger.

Karnaugh-diagram

Hver farget gruppe dekker et rektangel av sanne ruter. Variablene som endrer seg inne i en gruppe faller bort, så hver gruppe etterlater én konjunksjon. Slik leser du diagrammet →

Karnaugh-diagram med A i radene og BC i kolonnene
ABC00011110
0
1
Minimal form
(B ∧ C) ∨ (A ∧ B)

Grupper

Hvor mange variabler kan et Karnaugh-diagram ha?

Denne løseren tegner diagrammer for 2 til 6 variabler. Under 2 er det ingenting å gruppere; fem og seks tegnes som to eller fire stablede plan, og over 6 er heller ikke det lenger lettere å lese enn sannhetstabellen ved siden av. For flere variabler gir kalkulatorens ekvivalente former deg fortsatt en minimert DNF.

VariablerCellerRutenett
242 × 2
382 × 4
4164 × 4
5322 × (4 × 4)
6644 × (4 × 4)

Sum av produkter og produkt av summer

Å gruppere de sanne cellene gir en sum av produkter: én konjunksjon per gruppe, bundet sammen med ELLER. Å gruppere de usanne gir et produkt av summer, med literalene negert på vei ut: én disjunksjon per gruppe, bundet sammen med OG. Begge beskriver samme funksjon, og hvilken som er kortest avhenger av om enerne eller nullene danner de peneste rektanglene - derfor tilbyr løseren begge, og du tar den minste.

Sannhetstabell til UttrykkKonverter enhver sannhetstabell til et logisk uttrykk. Generer boolske formler i Disjunktiv Normalform (DNF) eller Konjunktiv Normalform (KNF) fra din tilpassede sannhetstabell.

Ofte stilte spørsmål

Finn svar på vanlige spørsmål om bruken av Logikkalkulatoren

Hvor mange variabler kan et Karnaugh-diagram ha?

Denne løseren tegner diagrammer for to til seks variabler: to gir et 2 × 2-rutenett, tre et 2 × 4, fire et 4 × 4. Fem og seks tegnes slik lærebøkene tegner dem, som to eller fire stablede 4 × 4-plan, der celler på samme plass i naboplan regnes som naboer - en gruppe som ikke nevner de stablende variablene, er det samme rektangelet på hvert plan. Over seks slutter naboskapene man må holde i hodet å være synlige - og det er det eneste et diagram er til for: bruk da den minimerte DNF-en blant kalkulatorens ekvivalente former.

Hva er forskjellen på sum av produkter og produkt av summer?

Det er to måter å lese det samme diagrammet på. Å gruppere de sanne cellene gir en sum av produkter: én konjunksjon per gruppe, bundet sammen med ELLER. Å gruppere de usanne gir et produkt av summer med negerte literaler: én disjunksjon per gruppe, bundet sammen med OG. Begge beskriver samme funksjon; hvilken som er kortest avhenger av om enerne eller nullene danner de peneste rektanglene.

Er svaret fra løseren virkelig den minimale formen?

Ja. De vesentlige primimplikantene tas først, og resten av dekningen søkes uttømmende med branch and bound i stedet for å velges grådig. Det betyr noe på et syklisk diagram - ett der ingen gruppe er vesentlig - fordi et grådig valg kan ende på en dekning som er ett ledd for lang, uten noen gang å si fra. Dominerte rader og kolonner strykes sammen med de essensielle, om og om igjen til skjemaet slutter å krympe, så de fleste diagrammer når aldri fram til søket - og det er dét som holder et eksakt svar øyeblikkelig selv med seks variabler.

Hvorfor er kolonnene merket 00, 01, 11, 10 og ikke 00, 01, 10, 11?

Fordi det er den rekkefølgen som får diagrammet til å virke. Merkelappene går i Gray-kode, der to påfølgende verdier skiller seg i nøyaktig én bit: nabocellene skiller seg altså i nøyaktig én variabel, og et rektangel av like verdier blir dermed et ledd der den variabelen har falt bort. I vanlig binær rekkefølge ville 01 og 10 stått ved siden av hverandre selv om de skiller seg i to biter, og å gruppere dem ville ikke bety noe. Kantene henger sammen av samme grunn: første og siste kolonne skiller seg også i én bit, så en gruppe kan løpe ut på den ene siden og fortsette på den andre.

Kan jeg markere celler som likegyldige?

Ikke direkte: løseren avbilder et uttrykk, og et uttrykk er sant eller usant i hver rad - det finnes ingen tredje verdi å skrive. Der en funksjon faktisk ignorerer et inndata, skriv det inn i formelen, så viser diagrammet det: et ledd som (D | !D) setter D på diagrammet som en variabel funksjonen ikke avhenger av, og slik er det ferdige diagrammet for et gyldig BCD-siffer bygd.

Se alle spørsmål