作業フローを簡素化:miniwebtoolを検索。
追加
ホームページ > 数学 > 高度な数学操作 > カルノー図 (K-Map) ソルバー
 

カルノー図 (K-Map) ソルバー

カルノー図を使用して論理関数を最小化します。最小項、最大項の入力、または真理値表の切り替えが可能です。色分けされたグループ化の可視化、主項、必須主項、およびクワイン・マクラスキー法によるステップバイステップの解法とともに、簡略化された主加法標準形 (SOP) または主乗法標準形 (POS) を取得できます。

カルノー図 (K-Map) ソルバー
変数: A, B, C, D
カンマまたはスペース区切り。インデックス範囲: 0 ~ 2^n-1。
出力値が重要ではないインデックス。
関数が0に等しいインデックス。
最小項モードと同じフィールドです。一度に一つのパネルに表示されます。
ヒント: 0をクリックすると1になり、1をクリックするとX(ドントケア)になり、Xをクリックすると0に戻ります。
SOPは1のセルをグループ化し、POSは0のセルをグループ化します。

Embed カルノー図 (K-Map) ソルバー Widget

カルノー図 (K-Map) ソルバー

カルノー図 (K-Map) ソルバーは、2~5変数のブール論理関数を最小化し、色分けされたグループ化によって古典的なカルノー図として簡略化を可視化します。最小項、最大項を入力するか、対話型の真理値表を使用してください。ソルバーは内部でクワイン・マクラスキー法を実行し、すべての主項を見つけ、必須主項をマークし、ステップバイステップの解説付きで最小の積和形 (SOP) または和積形 (POS) の式を生成します。主項チップをクリックすると、それがカバーするセルが点滅し、グループ化によってどのように論理が簡略化されるかを確認できます。

カルノー図とは何ですか?

カルノー図(1953年にモーリス・カルノーによって発明)は、真理値表をグラフィカルに表現したもので、入力変数が1つだけ異なるセルが物理的に隣接するように配置されています。鍵となるのは、行と列のグレイコード順序です。00、01, 11, 10のように、連続するラベルは正確に1ビットだけ異なります。この隣接性により、単一の簡略化された項に結合できる1(または0)のグループを視覚的に特定できます。

n個の入力変数に対して、カルノー図には 2^n 個のセルがあります。4変数のカルノー図は16セルの4×4グリッドであり、5変数のマップは2つの隣接する4×4グリッドとして描かれます。

SOP 対 POS: どちらの形式を選ぶべきか

積和形 (SOP: Sum of Products)

SOPは1のセルをグループ化します。各グループはリテラルの積(AND)になり、すべてのグループが論理和(OR)で結ばれます。例: AB'C + BD。SOPはAND–ORゲートネットワークに直接マッピングされるため、通常はデフォルトとして使用されます。

F = (グループ 1) + (グループ 2) + ...  |  各グループは AB'C のような積

和積形 (POS: Product of Sums)

POSは0のセルをグループ化します。各グループは反転したリテラルの和(OR)になり、すべての和が論理積(AND)で結ばれます。例: (A + B')(C + D')。関数に0よりも1が多い場合、POSの方が短くなることがよくあります。

F = (グループ 1) · (グループ 2) · ...  |  各グループは (A + B' + C) のような和

このツールは両方の形式を個別に計算します。出力モードを切り替えてリテラル数を比較し、実装にとってより単純な方を選択してください。

カルノー図のグループ化ルール

  • 2の累乗のグループのみ: グループには1、2、4、8、または16個のセルが含まれている必要があります。3個や5個のグループは許可されません。
  • 長方形の形状: グループ内のセルは長方形を形成する必要があります(水平、垂直、または端をまたぐ)。
  • 端の隣接性: 最上行は最下行と隣接し、左端の列は右端の列と隣接しています。これがグレイコード順序が重要である理由です。
  • 最大のグループから優先: 大きなグループほど多くの変数を排除し、より短い積項を生成します。8セルのグループは3つの変数を排除し、4セルは2つ、2セルは1つ排除します。
  • すべての1をカバーする必要がある: 各1のセル(SOPの場合)または0のセル(POSの場合)は、少なくとも1つのグループでカバーされる必要があります。
  • 重複は許可される: より大きなグループにつながる場合、同じ1を複数のグループでカバーしても構いません。
  • ドントケアは柔軟: ドントケアをグループに含めることでより大きなグループが作れる場合は含めても構いませんが、必ずしもカバーする必要はありません。

主項と必須主項

主項 (Prime Implicant) とは、それ以上拡張できないグループのことです。それ以上大きくすると、(SOPの場合)0のセルを含んでしまいます。ソルバーは見つけたすべての主項をリストします。その後、必要なすべての最小項をカバーする最小の主項セットである最小被覆 (Minimal Cover) を選択します。

必須主項 (Essential Prime Implicant) とは、特定の最小項をカバーしている唯一の主項である場合に必須とマークされます。すべての最小形式には、すべての必須主項が含まれている必要があります。それらを選択した後、残りの未カバーの最小項は、最も「コストの低い」追加の主項でカバーされます。

ドントケア条件

ドントケア(カルノー図上では X と表示)は、出力が重要ではない入力の組み合わせです。これは、実際の回路で決して発生しないか、値がどうであっても構わないかのいずれかです。アルゴリズムは、より単純な式が得られるように、各Xを0または1のいずれかとして自由に扱うことができます。実際、ドントケアを使用すると、リテラル数が30~60%削減されることがよくあります。現実世界の一般的な例としては、16個の4ビット入力組み合わせのうち10個しか使用しない10進デコーダがあり、組み合わせ10~15がドントケアとなります。

クワイン・マクラスキー法

カルノー図は視覚的な手法ですが、4~5変数を超えると実用的ではなくなります。クワイン・マクラスキー (QM) 法は、それに対応する表形式の手法であり、数学的に厳密でスケーラブルです。このソルバーは内部で QM 法を使用しています:

  1. 最小項をバイナリでリストし、1のビット数でグループ化します。
  2. 隣接するグループのペアを結合し(1ビットだけ異なるもの)、異なるビットをダッシュに置き換えます。例: 0011 + 01110-11
  3. それ以上結合できなくなるまで繰り返します。結合できなくなった項が主項です。
  4. 主項表を作成します。行が主項、列が必要な最小項です。必須主項(チェックマークが1つしかない列)を特定します。
  5. ペトリック法 / 全探索: 残りの未カバー最小項について、それらをカバーする最小の追加主項セットを見つけます。

この電卓の使い方

  1. 変数の数を選択: 2、3、4、または5。カルノー図のグリッドが自動的に適応します。
  2. 入力方法を選択:
    • 最小項: F = 1 となるインデックス(例: 1, 3, 5, 7)と、ドントケアを入力します。
    • 最大項: F = 0 となるインデックスを入力します。ソルバーは残りを自動的に1として計算します。
    • 真理値表: 各行をクリックして、出力を0、1、Xの間で切り替えます。手動設計の論理に最適です。
  3. SOPまたはPOS出力を選択。切り替えて両方の形式を比較してください。一方が他方より短くなることがよくあります。
  4. 「解く」をクリック。各主項が異なる色で表示されたカルノー図が現れます。チップをクリックすると、それがカバーするセルが点滅します。
  5. 手順を確認: クワイン・マクラスキー法の内訳により、各主項がどのように導出され、どれが必須であるかが示されます。

計算例: ドントケアを含む4変数関数

F(A,B,C,D) = Σm(1, 3, 7, 11, 15) + d(0, 2, 5) を考えます。

ドントケアがない場合、最小のSOPにはいくつかの項が必要になります。{0, 2} を 1 として扱うことで、ソルバーは 4 セルのグループ A'B' (0, 1, 2, 3 をカバー) を作成できます。5 を 1 として扱うことで、CD のカバー範囲を拡張できます。結果として得られる簡略化は次のようになります:

F = A'B' + CD

リテラルはわずか4つです。ドントケアのトリックを使わない場合の10個以上から削減されています。上の「4変数 ドントケア付」クイック例で、この正確な例を読み込むことができます。

なぜブール関数を最小化するのですか?

  • ゲート数の削減 = ハードウェアコストの低下、チップ面積の縮小、消費電力の低減。
  • 回路の高速化: クリティカルパス上のゲート遅延が減少します。
  • ドキュメントの簡素化: 簡潔な式は検証や保守が容易です。
  • デジタル設計の基礎: すべての FPGA 合成ツールは、クワイン・マクラスキー法の後継(Espresso-II など)を実行しています。

制限事項と他のツールの使用時期

  • 5変数以上: カルノー図は視覚的に乱雑になります。このツールは、2つの4×4マップに分割することで最大5変数までサポートしています。それを超える場合は、クワイン・マクラスキー法の手順に頼るか、ABC / Espresso などの合成ツールを使用してください。
  • ハザードとグリッチ: 最小被覆には静的ハザードが含まれる場合があります。ハザードのない設計には、冗長な主項を含める必要があります。このツールはそれらをマークしますが、ハザードカバーを自動的に追加はしません。
  • 複数出力の最小化: 複数の関数が変数を共有している場合、共同で最小化(ゲートの共有)を行うことでハードウェアをより小さくできます。このツールは一度に一つの関数を最小化します。

よくある質問

カルノー図とは何ですか?

カルノー図(K-map)は、ブール式を最小化するための視覚的な手法です。隣接するセルが1つの変数のみ異なるように配置されています(グレイコード順序)。1を1、2、4、8、または16のサイズの長方形にグループ化することで、最小の積和形表現を導き出します。

SOPとPOSの違いは何ですか?

SOP(積和形)は1のセルをグループ化し、それらの積項を論理和(OR)で結びます(例:A'B + CD)。POS(和積形)は0のセルをグループ化し、それらの和項を論理積(AND)で結びます(例:(A + B')(C' + D))。どちらも同じ関数を表しますが、通常どちらか一方がよりコンパクトになります。

ドントケアとは何ですか?なぜ使うのですか?

ドントケア項(Xでマーク)は、出力値が重要ではない入力の組み合わせです。これらは決して発生しないか、値がどうであっても構いません。ソルバーは、より単純な式が得られるように、これらを0または1のいずれかとして扱います。ドントケアを使用すると、多くの場合リテラル数を劇的に削減できます。

主項(プライムインプリカント)とは何ですか?

主項とは、それ以上拡張できない、隣接する1のセルの可能な限り最大のグループ(2の累乗サイズ)のことです。必須主項とは、少なくとも1つの最小項を単独でカバーしている主項であり、すべての最小形式に含まれる必要があります。

クワイン・マクラスキー法はどのように機能しますか?

クワイン・マクラスキー法はカルノー図の表形式版で、多くの変数に適しています。すべての最小項をバイナリでリストし、1の数でグループ化し、正確に1ビットだけ異なるペアを繰り返し結合します。それ以上結合できない項が主項となります。その後、主項表を使用して最小被覆を選択します。

このカルノー図ソルバーは何変数までサポートしていますか?

このツールは2から5変数までサポートしています。5変数のカルノー図は、2つの隣接する4×4マップ(A=0用とA=1用)として表示されます。5変数を超えるとカルノー図は実用的ではなくなるため、より大きな関数にはクワイン・マクラスキー法の手順を使用してください。

参考文献

このコンテンツ、ページ、またはツールを引用する場合は、次のようにしてください:

"カルノー図 (K-Map) ソルバー"(https://MiniWebtool.com/ja/カルノー図-k-map-ソルバー/) MiniWebtool からの引用、https://MiniWebtool.com/

MiniWebtool チーム作成。更新日: 2026年4月20日

また、AI 数学ソルバー GPT を使って、自然言語による質問と回答で数学の問題を解決することもできます。

その他の関連ツール:

高度な数学操作:

おすすめ:

標準偏差電卓 - 高精度パーセント増加電卓パーセンテージ減少電卓筆算割り算電卓ランダムカラージェネレーターシグマ記法電卓 総和パーセント誤差電卓ランダム絵文字ジェネレーターランダム誕生日ジェネレーターフィートとインチからセンチメートルへのコンバーターwar電卓合計電卓HEX電卓MACアドレス検索円錐展開図テンプレートジェネレーター画像分割ツール売上総利益率電卓弧長電卓クロスワードパズルメーカー空の行を削除するランダム名前ジェネレーター英単語ランダム生成ツール番号を並べ替える中央値電卓対数電卓分散電卓 高精度CAGR電卓楕円円周電卓👙 ブラサイズ電卓InstagramユーザーID検索逆テキスト手数料電卓小数時間から普通の時間へのコンバーターYouTubeチャンネル統計FPSコンバーター迷路ジェネレーター平方完成電卓MP3ルーパー動画を逆再生動画を結合センチメートルからフィートとインチへのコンバーター関数電卓ai句読点追加積分電卓上下反転テキストジェネレーター平方根電卓エンジェルナンバー電卓相対標準偏差電卓モジュロ電卓血糖値コンバーターマスターナンバー電卓ASCIIコード表log-base-2電卓指数電卓-高精度ランダム超能力ジェネレーター労働時間計算ツールボウリングスコア計算機変動係数電卓ランダム名ピッカーXMLバリデーターt検定電卓バイナリ電卓相関係数計算機デシベル (dB) 電卓圧力電卓ランダム日付ジェネレーター💧 露点電卓ビンゴカードジェネレーター歩数距離変換電卓並列抵抗電卓SRT 時間シフト 電卓ランダムトーナメント表作成ツールランダム時刻ジェネレーター斜辺電卓オンライン句読点削除ツールランダムアニマルジェネレーターランダム国ジェネレーターホームランの打席電卓動画を回転比率電卓配当利回り電卓CRC32チェックサム電卓ビデオをループ再生マン・ホイットニーのU検定計算機HEXコンバーター変化率電卓ボルト締付トルク計算機土星回帰電卓階段電卓動画から画像抽出ツール🎮 ゲーム感度変換器筆算足し算・引き算計算機有効数字電卓BUN対クレアチニン比電卓太陽・月・上昇星座電卓 🌞🌙✨桁数電卓⚔️ DPS電卓不可視文字除去ツール論理ゲートシミュレーター三角関数グラフ作成ツール加速度電卓fena電卓平均電卓-高精度自然対数電卓表面積電卓ビデオ速度を調整双子素数ファインダー標準誤差電卓正多角形電卓文字数による改行ピタゴラスの定理電卓散布図作成ツール複数分数電卓TikTok収益計算ツールトルク電卓面積分電卓素数ですか10進数からBCDへのコンバーター四捨五入電卓馬力電卓平方数リストアナグラム生成器割引率電卓周波数波長変換ツールhba1c電卓VTTからtxtへのコンバーターコラッツ予想電卓分数電卓csvからsrtへじゃんけんジェネレーター年の日電卓 - 今日は今年の何日目確率分布電卓3d距離電卓カイ二乗検定電卓グレイコード・バイナリ変換電卓ノノグラムジェネレーター (ピクロス)階乗電卓筆算かけ算計算機円錐台電卓絶対値電卓HTMLからテキストコンバータカロリー赤字電卓ランダムピッカーランニングペース電卓ワイヤーゲージ電卓極限電卓画像回転ツール身長パーセンタイル電卓atan2電卓SRTからTXTへの変換ツールアークタンジェント電卓🖱️ クリックカウンターテキストからバイナリ/16進数/ASCII変換器ランダム整数ジェネレーター線積分計算機野球のバッティング平均電卓音節カウンターRC時定数電卓Twitch収益計算ツール慣性モーメント計算機行番号を追加CPM 電卓🔊 トーンジェネレーターLog Base 10 電卓ベーカーズパーセント電卓二乗平均平方根電卓平方和の計算連分数電卓配管流量電卓ニュートン法電卓二重積分電卓小文字生成器 ⁽ᶜᵒᵖʸ ⁿ ᵖᵃˢᵗᵉ⁾沸点計算ツールAIトークンカウンタータンジェント電卓パスワード強度テスター割り切れるテスト電卓四分位範囲電卓水泳ペース計算機血液型計算機ワードサーチパズルジェネレーターCohen's d 電卓ポンドからキログラム変換オーディオ スプリッター中国剰余定理電卓四分位電卓psiからkPaへのコンバーターパーセントから小数へのコンバーター乗算電卓円周率の最初のn桁半減期電卓多項式因数分解電卓数字抽出ツール比較分数電卓水星逆行カレンダー放物線電卓数秘術電卓FacebookユーザーID検索IPアドレスから16進数への変換SVG最適化ツール標準ドリンク計算ツールワインペアリング提案ツールクライミンググレード変換器自転車ギア比計算機釣り結び強度計算機ヨガポーズホールドタイマー水泳SWOLF電卓レースタイム予測計算機ボクシングパンチ力計算機ラグビー得点電卓クリケット・ランレート電卓サッカーxg期待ゴール電卓テニススコアトラッカーWellsスコア電卓 (DVT/PE)グラスゴー・コーマ・スケール計算機アプガースコア計算機FFMI 電卓クーパー12分間走計算ツール1マイルウォークテストロックポート電卓除脂肪体重から筋力計算炭水化物インスリン比計算機インスリン感受性係数計算機ヘブライ暦変換器ヒジュラ暦変換器旧暦変換ツール文化別年齢電卓どれくらい前計算機あと何日カウントダウン電卓日付パターンジェネレーター中間日計算機日付に営業日を追加営業日計算機単語頻度アナライザー文の長さばらつき分析ツールヘミングウェイ風リーダビリティエディタ発音IPA変換ツールヴィジュネル暗号ツールアトバッシュ暗号ツールROT13エンコーダー・デコーダーEXIFデータビューア・削除ツールピッグラテン翻訳機バックロニム ジェネレーター頭字語ジェネレーターパングラムチェッカーリポグラム チェッカー画像からSVGトレーサー画像からASCIIアートへの変換器JSONスキーマジェネレーターTypeScriptプレイグラウンドLessからCSSへのコンパイラーSCSSからCSSへのコンパイラーSVGからReact/JSXへの変換器クエリ文字列ビルダーURLパーサーUUID検証・デコーダーHTTPステータスコードリファレンスcURLコマンドビルダーシェルピンスキーの三角形ジェネレーター3D曲面プロッター極方程式プロッタージュリア集合生成器マンデルブロ集合エクスプローラーL-Systemフラクタルジェネレータードロネー三角形分割ジェネレーターボロノイ図ジェネレータースピログラフジェネレーターテッセレーションジェネレーターシックスシグマ工程能力計算機パレート図ジェネレーターNPSネットプロモータースコア計算機コホート維持率電卓解約率計算機顧客獲得コストCAC計算機顧客生涯価値CLV電卓コンバージョン率電卓A/Bテスト サンプルサイズ電卓A/Bテスト有意性電卓レンズの式計算機導線の磁場電卓電場計算機クーロンの法則電卓スネルの法則計算機角速度計算機求心力計算機振り子周期電卓ばね定数電卓ドップラー効果電卓ソルティノレシオ電卓トレイナー・レシオ電卓株式ベータ計算機インフレ連動米国債TIPS電卓住宅ローン リキャスト 電卓フォワードレート電卓債券デュレーション電卓 マコーレーと修正債券コンベクシティ電卓インデックス連動年金電卓変額年金電卓リバースモーゲージ電卓年金支払い計算機そろばんシミュレーターロシア農民式乗算ヴェーダ数学トリック電卓古代エジプト式乗算電卓ローマ数字計算ソルバー暗算トレーナー九九クイズ繰り上がりと繰り下がりビジュアライザー数の合成と分解生成ツール硬貨文章題ソルバー距離・速さ・時間の三角形電卓仕事算ソルバー混合問題ソルバー年齢文章題ソルバー列車出会い問題ソルバー水分補給計算機ペース カロリー電卓薬剤投与量計算機アルコールカロリー電卓ボディリコンポジション電卓ランダム討論トピックジェネレーターランダムな猫犬の名前ジェネレーターランダム聖句ジェネレーターランダム算数問題ジェネレーターランダム段落ジェネレーターランダム英文ジェネレーター砂利・砂・表土計算機鋼材重量電卓梁の電卓ドルから金への変換ツールオプション電卓株式分割電卓ESPP電卓請求書遅延手数料電卓フリーランス時給電卓リース対購入電卓高度なチップ割り勘電卓持ち物リストジェネレーター時差ぼけ電卓旅行予算電卓飛行距離電卓熱損失電卓発電コスト電卓水使用量電卓家電電気代計算機家庭エネルギー監査電卓太陽光ROI電卓太陽光パネル電卓堆肥cn比計算機芝生肥料電卓霜の日付電卓レイズドベッド用土電卓NPK肥料電卓種子発芽率電卓動画ビットレート電卓音楽キー移調ツール音楽BPMタッパー写真ファイルサイズ推定電卓メガピクセルから印刷サイズ計算機クロップファクター電卓露出トライアングル電卓車両牽引能力電卓カーリース計算機0–60とクォーターマイル電卓EV充電時間電卓EV航続距離計算機トーラス電卓不規則多角形面積電卓円錐曲線識別ツール双曲線電卓Twitter/X 文字数カウンターYouTubeコメントピッカーYouTubeタグ抽出ツールyoutubeサムネイルダウンローダーyoutube収益見積もりツールランダムRPGキャラクタージェネレーター