자유 변수와 종속 변수

논리학과 컴퓨터 과학에서 자유 변수(自由變數, 영어: free variable)는 수식 속의 변수 가운데 상숫값으로 치환할 수 있는 것이다. 반대로 종속 변수(從屬變數, 영어: bound variable)는 상숫값으로 치환하였을 때 수식이 본래의 의미를 잃게 되는 변수이다. 종속 변수 대신 가변수(假變數, 영어: dummy variable)라고도 하나, 이는 회귀 분석의 용어로서 더 많이 쓰인다. 컴퓨터 프로그래밍에서 자유 변수는 전역 변수, 종속 변수는 지역 변수를 가리킨다. 이 경우, 자유 변수는 대략 함수의 바깥에서 정의된 변수를 뜻한다. 어떤 수식의 변수 x {\displaystyle x} 가 다음과 같은 꼴의 부분 수식 속에 나타난다면, 그 위치의 x {\displaystyle x} 를 종속 변수라고 한다. ∀ x ( ⋯ ) {\displaystyle \forall x(\cdots )} ∃ x ( ⋯ ) {\displaystyle \exists x(\cdots )} ∑ x ( ⋯ ) {\displaystyle \sum _{x}(\cdots )} ∫ ( ⋯ ) d x {\displaystyle \int (\cdots )dx} lim x → a ( ⋯ ) {\displaystyle \lim _{x\to a}(\cdots )} 기타 등등 여기서 ∀ {\displaystyle \forall } 는 전칭 기호, ∃ {\displaystyle \exists } 는 존재 기호, ∑ {\displaystyle \textstyle \sum } 은 급수, ∫ {\displaystyle \textstyle \int } 는 적분, lim {\displaystyle \textstyle \lim } 은 극한이다. ∀ x {\displaystyle \forall x} 의 x {\displaystyle x} 까지 종속 변수인지는 문맥에 따라 다르다.:17 종속 변수가 아닌 변수를 자유 변수라고 한다. 수식 ∑ n = 1 10 m n {\displaystyle \sum _{n=1}^{10}{\frac {m}{n}}} 에서, m {\displaystyle m} 은 자유 변수, n {\displaystyle n} 는 종속 변수이다. 따라서, 이 급수는 m {\displaystyle m} 의 함수이지만, n {\displaystyle n} 의 함수는 아니다. 수식 ∫ a b f ( x , y ) d x {\displaystyle \int _{a}^{b}f(x,y)dx} 에서, x {\displaystyle x} 는 종속 변수, y {\displaystyle y} 는 자유 변수이다. 즉, 이 적분은 y {\displaystyle y} 의 함수이지만 x {\displaystyle x} 의 함수가 아니다. 변수에 상숫값을 대입시킬 때에는 반드시 자유 변수에만 대입시켜야 한다. 예를 들어, 급수 n + ∑ n = 1 10 n {\displaystyle n+\sum _{n=1}^{10}n} 속의 세 개의 n {\displaystyle n} 가운데, 첫째 n {\displaystyle n} 은 자유 변수, 둘째와 셋째 n {\displaystyle n} 은 종속 변수이다. 여기에 n = 5 {\displaystyle n=5} 를 대입시키려면, 자유 변수인 첫째 변수에만 대입시켜야만 정확한 결과 5 + ∑ n = 1 10 n = 5 + 55 = 60 {\displaystyle 5+\sum _{n=1}^{10}n=5+55=60} 를 얻는다. 만일 n = 5 {\displaystyle n=5} 를 이 급수의 자유 변수와 종속 변수에 대입시키면, 5 + ∑ 5 = 1 10 5 {\displaystyle 5+\sum _{5=1}^{10}5} 를 얻으며, 이는 무의미한 수식이다. 만일 첫째와 셋째 n {\displaystyle n} 에만 대입시키면, 5 + ∑ n = 1 10 5 = 5 + 50 = 55 {\displaystyle 5+\sum _{n=1}^{10}5=5+50=55} 를 얻으며, 이 식의 값은 n + 55 {\displaystyle n+55} 에 n = 5 {\displaystyle n=5} 를 대입한 결과값과 다르다. 종속 변수를 다른 변수로 대신하여도 수식의 의미가 변하지 않는다. 예를 들어, 다음과 같은 세 급수는 완전히 같은 급수이다. ∑ m = 1 10 m = ∑ n = 1 10 n = ∑ k = 1 10 k {\displaystyle \sum _{m=1}^{10}m=\sum _{n=1}^{10}n=\sum _{k=1}^{10}k} 논리식 x > 1 ∨ x < − 1 {\displaystyle x>1\lor x<-1} 에서, x {\displaystyle x} 는 자유 변수이다. 여기에 상숫값인 x = 3 {\displaystyle x=3} 을 대입하여 얻는 3 > 1 ∨ 3 < − 1 {\displaystyle 3>1\lor 3<-1} 은 여전히 유의미한 논리식이다. 논리식 ∃ x ( x < 0 ) {\displaystyle \exists x(x<0)} 에서, 두 x {\displaystyle x} 는 모두 종속 변수이다. 여기에 상숫값인 x = 3 {\displaystyle x=3} 을 대입하여 얻는 논리식은 원래의 논리식과 같다. 만일 둘째 x {\displaystyle x} 를 3으로 대신하면 ∃ x ( 3 < 0 ) {\displaystyle \exists x(3<0)} 을 얻는데, 이는 3이 음수라는 의미의 거짓 명제이지만, 원래의 논리식은 음수가 존재한다는 의미의 참인 명제이다. 또한, 바뀐 논리식의 변수 x {\displaystyle x} 를 다른 변수로 치환하여도 의미가 변하지 않는다. 예를 들어, ∃ y ( y < 0 ) {\displaystyle \exists y(y<0)} 는 원래의 논리식과 동치이다. 네임 바인딩 Lamkins, David B. (2004년 12월 8일). 《Successful Lisp: How to Understand and Use Common Lisp》 (영어). bookfix.com.  Hamilton, Alan G. (1988). 《Logic for Mathematicians》 (영어) 개정판. Cambridge University Press. ISBN 0-521-36865-0.  Bell, John L.; Machover, Moshé (1977). 《A Course in Mathematical Logic》. North-Holland. ISBN 978-0-7204-2844-5.  “Free variable”. 《Encyclopedia of Mathematics》 (영어). Springer-Verlag. 2001. ISBN 978-1-55608-010-4.  “Bound variable”. 《Encyclopedia of Mathematics》 (영어). Springer-Verlag. 2001. ISBN 978-1-55608-010-4.  Weisstein, Eric Wolfgang. “Free variable”. 《Wolfram MathWorld》 (영어). Wolfram Research.  Weisstein, Eric Wolfgang. “Bound variable”. 《Wolfram MathWorld》 (영어). Wolfram Research.  Weisstein, Eric Wolfgang. “Dummy variable”. 《Wolfram MathWorld》 (영어). Wolfram Research.  “Free and bound variables”. 《PlanetMath》 (영어).  “Definition:Free variable”. 《ProofWiki》 (영어).  “Definition:Bound variable”. 《ProofWiki》 (영어).