Z3는 논리식이나 제약 조건을 자동으로 풀어주는 SMT 솔버입니다.하지만 아무리 좋은 도구도 설치가 안 되면 말짱 도루묵이죠...이번 글에서는 Z3를 내 컴퓨터에 설치하고, 첫 번째 예제 코드를 실행하는 것까지 함께 해보겠습니다. Python에서 Z3 사용하기Z3는 다양한 언어를 지원하지만, 이 시리즈에서는 가장 많이 사용하는 Python에서 Z3를 사용하는 방법을 기준으로 설명합니다.Python이 설치되어 있어야 합니다.(설치가 안 되어 있다면 👉 Python 공식 사이트에서 설치해주세요.)1. 🍎 Mac에서 설치하기 (macOS)1) 터미널 열기스포트라이트(command + space)를 열고 “터미널”을 입력해 실행합니다.2) z3-solver 설치아래 명령어를 입력하여 Z3 Python 바인딩..
Z3는 수식이나 논리를 자동으로 증명하거나, 조건을 만족하는 값을 찾아주는 SMT Solver입니다.정수나 실수 같은 간단한 종류부터 배열, 비트벡터 등 복잡한 구조까지 폭넓게 지원해,형식 검증부터 퍼즐 풀이까지 다양하게 활용할 수 있습니다.1) Z3란?SMT(Satisfiability Modulo Theories)라는 개념에 기반한 솔버입니다.논리식의 참/거짓만 따지는 SAT(참/거짓 문제)에서 더 나아가,정수, 실수, 배열, 비트벡터 같은 수학적 이론까지 고려해 “만족 가능한 해가 있나?”를 찾습니다.마이크로소프트 리서치에서 만들었고 오픈소스로 공개되어 있어,형식 검증이나 프로그램 분석 등 다양한 분야에서 두루 활용됩니다.2) 왜 Z3를 써야 하는가?한 번 제약을 써넣기만 하면, Z3가 알아서 해를 ..
"로엔비 판결"이란, 법령이나 판결문처럼 누구나 쓸 수 있는 공공정보를 그저 모아놓은 게 아니라, 쓰기 편하게 잘 정리하고 분류해서 새로운 형태로 만든 데이터베이스는 저작권으로 보호받을 수 있다고 한 판결입니다. 쉽게 말해, 공짜 자료라도 ‘어떻게 새롭게 정리하고 구성하느냐’에 따라 그 결과물에 대한 법적 보호가 달라진다는 뜻입니다. 로앤비(Law&Business)는 법령, 판례, 행정해석, 학술논문 등 광범위한 법률정보를 수집하고, 이를 온라인 데이터베이스 형태로 구축하여 유료로 제공하는 법률정보 서비스 기업입니다. 이 과정에서 단순히 국가기관이 발행한 공공자료를 무작위로 나열하는 것이 아니라, 전문 법학자나 변호사의 검수를 거쳐 자료의 중요도, 주제 분야, 관련 법령·판례 간의 상관관계 등을 종합적으..
윤석열 대통령은 2024년 12월 3일, 북한 세력과 반국가 세력을 척결하겠다며 계엄령을 선포했습니다. 이는 1979년 이후 처음으로 내려진 계엄령으로, 민주주의 국가에서는 매우 이례적인 결정으로 평가받고 있습니다.계엄령은 군사적 통제 아래 행정, 입법, 사법 기능을 제한하는 조치로, 민주주의 국가에서는 신중히 사용해야 할 권한입니다. 하지만 이번 조치는 국민 기본권 제한, 헌법적 정당성 문제, 정치적 의도 논란을 불러일으키며 국내외적으로 큰 논란을 낳았습니다.사건 배경윤석열 정부는 최근 지지율 하락과 야당의 강력한 반대에 직면해 있었습니다. 야당은 주요 검사 탄핵과 예산안 거부를 통해 정부를 압박하며 갈등이 심화되었습니다. 이런 상황에서 대통령은 북한 공산 세력과 반국가 세력이 국가를 위협하고 있다는 ..
1. 계엄령이란?정의계엄령은 국가의 안보와 질서 유지가 위협받는 상황에서 헌법과 법률에 따라 발동되는 특별한 조치입니다. 이는 전쟁, 대규모 폭동, 국가적 위기 상황 등 긴급한 문제를 해결하고 공공의 안전을 보장하기 위해 시행됩니다.2. 계엄령의 법적 정의헌법에서의 정의대한민국 헌법 제77조에 따르면 계엄령은 다음 두 가지로 나뉩니다:경비계엄: 전쟁, 사변 등 중대한 상황에서 사회 질서를 유지하기 위해 발동.특징:군이 경찰을 지원하며 치안 업무 수행.민간 행정 유지.기본권 제한 정도가 비교적 약함.비상계엄: 사회 질서가 극도로 혼란하거나 국가 비상사태가 발생했을 때 발동.특징:군이 행정권과 사법권까지 장악.시민 기본권(언론, 집회 등) 강력히 제한.민간인 재판도 군사법원에서 진행 가능.발동과 해제계엄령은..
재테크를 시작하려는 분들이 가장 먼저 고민하게 되는 금융 상품 중 하나가 바로 예금과 적금입니다. 이 둘은 모두 은행에서 제공하는 대표적인 저축 수단이지만, 자신의 재정 상황에 맞지 않는 상품을 선택해 후회하는 경우도 많습니다. "목돈을 한꺼번에 맡기는 게 좋을까? 아니면 매달 꾸준히 적립하는 게 유리할까?" 이 질문에 답하기 위해서는 단순히 금리만 비교하는 것이 아니라, 저축의 목적, 개인의 재정 상황, 그리고 현재의 금융 환경을 꼼꼼히 따져봐야 합니다.예를 들어, 안정적으로 목돈을 굴리고 싶다면 예금이 유리할 수 있지만, 매달 조금씩 모으면서 저축 습관을 기르고 싶다면 적금이 더 적합할 수 있습니다.이번 글에서는 예금과 적금의 기본 개념과 차이점을 살펴보고, 각각의 장단점을 비교하여 어떤 상황에서 ..
사진 용량 줄이기 이미지를 업로드하고 압축 비율을 설정하세요. 예상 크기 확인 압축 및 다운로드 압축된 이미지 다운로드
사람에 따라 정도에 차이가 있긴 하지만, 술을 마시면 대부분 취하게 됩니다.술을 마신 뒤 아마, “내가 지금 얼마나 취했을까?” 궁금해본 적 있으실 겁니다.취하는 이유는 알코올이 몸 안으로 들어와 혈류를 타고 돌아다니면서 우리의 뇌와 몸에 영향을 주기 때문입니다.이 상태를 수치로도 나타낼 수 있습니다.이렇게 나타낸 것이 바로 혈중 알코올 농도(BAC: Blood Alcohol Concentration)입니다.BAC가 높을수록 판단력과 반사 능력이 떨어집니다. 따라서, 운전할 때, 법적 기준 이상이면 음주운전에 해당할 수 있습니다.보통은 호흡 측정기를 사용하고 좀 더 정확히 측정하고 싶은면 혈액 검사를 합니다.하지만 매번 호흡 측정기를 사용하거나 혈액 검사를 할 수는 없습니다.그래서, 마신 술의 양과 시..
One-Hot 인코딩은 컴퓨터가 이해할 수 있도록 범주형 데이터를 이진 벡터로 변환하는 방법입니다. 이 기법은 각 범주에 해당하는 위치만 1로 표시하고, 나머지는 0으로 만듭니다. 1. One-Hot Encoding의 정의 One-Hot Encoding은 주어진 범주 중 하나를 컴퓨터가 이해할 수 있는 0과 1로 이루어진 벡터로 변환하는 방법입니다. 변환된 벡터에서 해당하는 범주만 1로 표시되고, 나머지는 모두 0이 됩니다.예시로,과일"이라는 범주에 사과, 포도, 수박이라는 범주의 값이 있다고 해봅시다.사과 → [1, 0, 0]포도 → [0, 1, 0]수박 → [0, 0, 1]이렇게 변환하면, 컴퓨터는 이진 벡터로 변환된 데이터를 처리할 수 있습니다.2. 주요 특징1) 범주별 독립적 표현 각 범주는 해..
Gradient Boosting Machine (GBM)은 앙상블 학습(Ensemble Learning) 기법의 하나로, 여러 개의 약한 학습기(weak learner)를 결합하여 예측 성능을 향상시키는 방법입니다. 주로 결정 트리(Decision Tree)를 사용하며, 각 트리가 순차적으로 학습됩니다. 1. GBM의 정의 GBM의 핵심 아이디어는 이전 모델의 오차(residual)를 줄이는 방향으로 새로운 모델을 학습시키는 것입니다. 이 과정에서 Gradient Descent(경사 하강법)을 사용하여, GBM은 각 반복에서 손실 함수의 기울기(gradient)를 계산하고, 다음 트리는 이 기울기를 줄이는 방향으로 학습합니다.수학적으로 정의하면 다음과 같습니다.여기서,이 과정은 지정된 반복 횟수나 오차..
2. (가)는 학사 관리 시스템의 학과 정보가 저장된 테이블과 학생 정보가 저장된 테이블이다. 을 고려하여 에 따라 쓰시오. [2점]데이터베이스 문제입니다.실행에 따라 위반되는 무결성 제약 조건을 쓰라고 하네요~!테이블을 자세히 살펴보며 작성 방법을 보면 쉽게 풀 수 있습니다.정 답참조 무결성 제약 조건조건에 보면 두 개의 SQL 테이블 생성 구문이 나와 있습니다. 하나는 학과 테이블이고, 다른 하나는 학생 테이블이네요.학과 테이블에는 학과명, 연락처, 사무실이 있습니다.학과명은 PRIMARY KEY로 지정되어 유일하고 중복될 수 없습니다.학생 테이블에는 학번, 이름, 학과가 있습니다.학번은 PRIMARY KEY로 지정되어 유일하고 중복될 수 없습니다.FOREIGN KEY(학과) REFERENCES ..
1. 다음은 2022개정 정보과 교육과정의 교과 역량에 대해 정보 교사들이 나눈 대화의 일부분이다.괄호 안의 ㉠과 ㉡에 해당하는용어를 순서대로 쓰시오. [2점]정보교과 역량 3가지를 묻는 문제입니다.정보 교과역량 3가지 컴퓨팅 사고력, 디지털 문화 소양, 인공지능 소양을 묻는 질문이네요!정 답㉠ 디지털 문화 소양 ㉡ 인공지능 소양정보교과 역량 3가지를 묻는 질문입니다!교육과정에 제일 앞에 나와있는 표를 확인하면 쉽게 풀 수 있죠!한 번, 다시 확인해봅시다! 컴퓨팅 사고력은 나왔으니 정답은 ㉠ 디지털 문화 소양 ㉡ 인공지능 소양 입니다!