영어를 사용할 때 우리를 가장 괴롭히는 영문법 중 하나가 가정법이죠. 

 

저도 영어를 배우고, 또 20년 넘게 가르치면서, 가정법을 어떻게 이해하고 가르칠지 많이 고민했습니다. 여러 책을 찾아 연구하면서 가정법에 대한 정리한 것을 아래에 공유하려고 합니다.  

 

이게 최선은 아닐지 모르지만, 영어 문법이라는 것은 너무나 깊이 파고들 필요는 없기 때문에 최대한 단순하면서도 가장 설명력이 큰, 적정 수준의 가정법 설명을 하려고 합니다. (일반인들은 영문법을 학문으로 공부할 필요가 없죠.^^) 조금 어렵더라도 다음을 잘 읽어보세요. 이해가 안되는 부분은 질문을 다셔도 좋습니다. 

 

조건문과 가정문 구별하기 

 

if가 들어간다고 해서 모두 가정문은 아니에요. 조건문과 가정문 모두 if를 씁니다. 

 

우선, 조건문이란,

'A이면 B이다/할 것이다'라는 식의 문장이에요. 

 

[조건문 예문]

 

If X equals 4, what is the value of 5X? 

X가 4라면, 5X의 값은 무엇인가요? 

 

If you need any help, let me know.

어떤 도움이 필요하시면, 제게 알려주세요. (직역) 

 

If you choose 'close', your app will terminate.

당신이 close를 선택하면 당신의 앱은 종료될 것입니다. 

 

If you are buying things from US websites, you don't have to pay US sales tax.

당신이 미국 웹사이트에서 물건을 사고 있다면 미국 판매세를 지불할 필요가 없습니다. 

 

위에 나온 영어 문장들은 모두 조건문이에요. 

단순히 '(과거, 현재, 미래에) ~하면 ~하다'라는 뜻이죠. 

 

가정문이란, 

미래, 현재, 과거 상황을 가정해서 말하는 문장이에요. 

그래서 가정문은 말하는 사람이 '실제로는 그렇지 않다'는 마음이 바탕에 깔려 있어요.  

(객관적으로 가능성이 있느냐의 문제가 아니라 주관적인 느낌이 중요해요.)

 

그리고 가정문은, 

가능성이 떨어진다는 점 때문에, 예의를 갖추거나 공손하게 말할 때도 써요. 

 

[예문]

 

A. Can you help me? 

B. Could you help me? 

 

A 문장은 그냥 '나 도와줄 수 있어?'라는 뜻이지만 (직설법 )

B 문장은 '혹시 가능하다면... 저 좀 도와주실 수 있겠어요?'라는 느낌이죠. 

 

가정문에 과거형 동사를 쓸 수밖에 없는 이유

[결론 먼저] 가정문에 과거형 동사를 쓰는 이유는 바로, 

조건문과 가정문을 구별하기 위해서! 입니다.  

 

모든 것의 원흉은 바로 다음 문장이에요. 

 

'내일 비가 오면 우리는 실내에 머물 거예요.'라는 말은 영어로 다음과 같이 써요. 

 

If it rains tomorrow, we will stay indoors. 

 

문제는 tomorrow!

내일 이야기인데 동사는 현재형 rains를 쓰고 있어요. 

 

이걸 문법적으로 말하면

시간과 조건 부사절에서는 미래 일도 현재형 동사로 쓴다고 해요.

(시간 부사절이란, when , while, until로 시작되는 문장이고, 조건 부사절은 if로 시작되는 문장이에요.) 

 

[궁금증] 미래일인데 현재형을 쓴다... 왜 그럴까요? 

(왜? 는 마법의 단어입니다. 원리를 생각하게 해주고 늦더라도 답을 주죠.^^)

 

[아마도 답]

if나 when이 이미 미래적인 의미를 담고 있기 때문이에요.

 

언어는 중복 표현을 싫어해요. (그것을 '언어의 경제성'이라 불러요.) 

이미 if(~한다면)나 when(~할 때)에서 미래에 관한 의미를 담고 있기 때문에 동사에서는 그냥 현재형 동사를 쓰는 거예요. 

 

이것은 우리말에서도 그대로 적용됩니다. 우리말에서도, 

 

'내일 비가 올 거라면....'이나 '내일 비가 올 거면'처럼 복잡하게 하지 않고 

'내일 비가 오면...'으로 간단히 현재형을 쓰죠. 

 

그래서 If it rains tomorrow, we will stay indoors. 라고 쓰는 거죠. 

하지만 주절에서는 will이 쓰인 거 보이죠?

거기에는 if같은 말이 없으니까 미래 의미를 가진 will을 써요. 

 

[질문] 그런데 '(실제는 아닌데 만약) 지금 비가 온다면'이라는 말을 하려면,

즉 현재 일에 대한 가정문을 말하려면 어떻게 할까요? 

 

If it rains now라고 하면 조건문이 돼요. 그래서 

조건문과 구별이 되지 않기 때문에

조건문과 구별하기 위해서! 원어민들은 동사를 과거형으로 쓰게 되었어요. 

 

[참고] 

영어에는 시제가 여럿 있지만, 동사 형태현재형과 과거형 (과거분사) 밖에 없어요. 

현재, 과거 이외의 시제는 이 3가지 형태를 조합해서 시제를 표현하죠. 

미래를 뜻하는 will도 동사 형태로만 보면 현재형이고 과거형은 would죠.

현재완료형도, 예를 들어,

has gone의 has는 현재형, gone은 과거분사, 그리고 이게 합쳐져서 현재 완료 시제가 되죠.  


 

미래 일에는 주로 조건문을 쓰고

현재일과 과거일에는 주로 가정문을 써요. 

 

왜냐면~

미래에는 비가 올 수도 있고, 안올 수도 있으니까 조건문을 쓰지만 

 

현재는 비가 오거나 안 오거나 할 수는 없죠. 둘 중 한개의 상황만이 존재하니까요.

과거도 비가 왔거나 오지 않았거나 한가지 상황만 존재해요. 

 

미래 일은 아무리 가능성이 작더라도 어떤 일이 벌어질 수 있는 가능성이 있기 때문에 if 조건문을 쓰지만 

현재와 과거 일은 어떤 상황이 이미 벌어졌기 때문에 if 문장을 쓰려면 가정문을 써야 해요. 

 

그래서 대부분

미래 일에 if를 쓰면 조건문이 되고 

현재와 과거 일에 if를 쓰면 조건이 아니라 가정문이 되는 거예요. 

 

[추가 설명]

그런데 If it rains now... 라는 문장을 쓰면 조금 어색할 수 있어요. 

rain 같은 동작(상태 변화)을 나타내는 동사를 현재 상황에 쓰면 미래의 의미를 갖기 때문에 

현재에 대한 가정을 할 때는 주로 be 동사같은 상태 동사를 써요. 

 

하지만 특이하게 be 동사만은 주어가 무엇이든 문법적으로 were를 씁니다. 

(요즘엔 주어가 단수이면 was를 쓰는 원어민이 꽤 많아요. )

 

[정리하면]

(미래에 대한) '조건문'을 쓸 때는

if절과 주절에 현재형을 써요. 

 

[예문] If it rains tomorrow, we will stay indoors.

          내일 비가 오면, 우리는 실내에 머물 거예요. 

 

현재에 대한 '가정문'을 쓰려면 (조건문과 구별하기 위해)

if절과 주절에 과거형을 써요. (주절에는 will의 과거형 would를 써요.)

 

[예문]

If it were raining now, I would stay indoors.

지금 비가 오고 있다면, 우리는 실내에 머물 거예요. 

If it were sunny now, we would go on a picnic.

지금 날씨가 화창하다면, 우리는 소풍 갈건데...

 

과거에 대한 '가정'을 하려면

if절과 주절에 완료형을 써요. (if절에는 과거완료 had + p.p, 주절에는 would + have + p.p)

과거형보다 한 시제 이전 형태는 과거 완료 had + p.p이고

조동사 would 다음에는 완료형 have + p.p를 써서 한 시제 이전 상황을 나타내요. 

(조동사 다음이나 to 부정사 다음에 have + p.p형태를 쓰면 한시제 전에 일어난 일이라는 의미가 되요.)

 

[예문]

If it had snowed yesterday, we could have gone skiing. 

어제 눈이 내렸더라면, 우리는 스키타러 갈 수 있을 거예요. 

 

그런데! 

미래도 가정할 수 있겠죠. 단순히 조건문으로 말하지 않고 말이죠. 

예를 들어, 6월에 눈이 내릴 가능성은 거의 없지만 가정으로 말할 수는 있을 것입니다. 

 

그런데 만약 If it snows tomorrow... 라고 말하면, 단순 조건의 의미가 돼요. 

이것은 내일 눈이 내릴 가능성이 충분하다는 의미죠. 

 

그런데 내일 눈이 내릴 가능성이 없다는 마음으로, 가정문을 쓰고 싶으면 어떻게 할까요?

 

말하는 사람이 '그럴 가능성이 없다'는 가정의 의미를 전달하려고 하면 어쩔 수 없이 과거형 동사를 써야 하는데, 

If it snowed ...라고 쓰면 미래가 아닌 '현재에 대한 가정'이 되니까 이것은 의미 전달이 안됩니다.

 

그래서 결국 원어민들은 일반적인 동사를 쓸 수 없어서,

should라는 조동사 과거형을 써서 미래 가정을 나타내게 됐어요. 

(should는 '혹시'라고 번역하면 의미가 잘 통해요.)

 

그래서, 미래에 대한 가정을 하려면

if절에 should를 쓰고 주절에 현재형 will이나 과거형 would를 써요. 

 

[예문]

 If it should snow tomorrow, we will/would go skiing. 

혹시 내일 눈이 내린다면 우리는 스키타러 갈 거예요. 

 

문법적으로는 if절 내에서 should가 과거형 동사이므로 주절에서도 would로 과거형 동사를 써야 하지만

실제로는 미래 의미이기 때문에 요즘에는 그냥 will을 많이 써요. 

 

미래에 대한 가정문이라고 해서 불가능한 것만을 의미하지는 않아요.

그리고 가정문은 기본적으로 가능성이 희박함을 의미하기 때문에

항상 공손한 느낌을 지닐 수 있다고 위에서 말했어요. 

 

If you should need any help, please do not hesitate to contact us. 

혹시라도 도움이 필요하시면, 주저하지 마시고 저희에게 연락주세요. 

 

[여기서 잠깐~~~]

조건문에는 if절이나 주절이나 현재형을 쓰고

가정문에는 if절이나 주절에 과거형을 쓴다고 했는데, 

if절과 주절에 과거형을 썼다고 해서 모두 가정문은 아니에요. ㅠㅠ 

 

Steve Jobs 전기에 나오는 다음 예문을 볼게요. 

 

If we needed a cabinet, he would build it. 

(만약 우리가 캐비넷이 필요하면 아버지가 캐비넷을 만들곤 했어요.)

 

이 문장은 과거일을 말하는 조건문이에요. 스티브 잡스의 아버지가 뭐가 필요하면 직접 만들곤 했다는 내용이죠. 

가정이란, 그럴 가능성이 없다는 생각을 전제로 하는 말인데, 이 문장은 단순히 과거에 '이런 일이 있으면 이렇게 했다.'를 말하는 단순 조건문인 거예요.  

 

[정리하면]

가정문은 과거형 동사를 쓰지만

과거형 동사를 쓴다고 해서 모두 가정문은 아니에요. 

과거에 있었던 조건문을 쓸 때도 과거형 동사를 써요. 

 

조건문에는 과거형 동사 뿐 아니라 아래 문장처럼 if절에 현재 완료형을 쓸 수도 있어요.  

If you have lived abroad for more than 6 months, you must complete this form.

당신이 (지금까지) 6개월 이상 해외에서 살았다면, 당신은 이 서류를 작성해야 합니다. 

 

조금 혼란스러울 수 있지만, 핵심만 기억해놓으세요. 

 


<가정법 기초 핵심 정리>

 

위에서 가정법에 관한 조금 긴 설명을 했어요.

가정법은 어렵지만, 왜 그런 식으로 말하는지 이해가 반드시 필요하기 때문에 설명이 조금 길었어요.  

 

우선, 조건문과 가정문을 구별해야 해요 

 

조건문은 'A이면 B할 것이다'라는 조건의 의미, 충분히 일어날 수 있는 상황에, 주로 미래 상황에 쓰고

가정문은 일어날 가능성이 희박하다고 느끼는 현재, 과거, 미래 상황에 써요. 

 

둘째, 조건문에는 현재형 동사를 쓰고 가정문에는 원칙적으로 과거형 동사를 써요  

 

[조건문]

'A이면 B할 것이다'는 의미의 조건문에는 if절과 주절에 현재형 동사를 써요.

(if절에 현재형 동사 is, rains... 를 쓰고 주절에도 will (뜻은 미래 의미이지만 형태는 현재형)을 써요.)

 

If it rains tomorrow, we will stay indoors.

내일 비가 오면 우리는 실내에 머물 거예요. 

 

[현재 일에 대한 가정문] 

현재 일을 가정하려면 if절과 주절에 과거형 동사를 써요.

(if절에 were, came..., 주절에는 would, could...)

 

If it were sunny now, we would go on a picnic.

지금 화창하다면 우리는 소풍 갈텐데... 

 

[과거 일에 대한 가정문] 

과거 일을 가정하려면 if절과 주절에 (과거)완료형을 써요.  

(if절에는 과거완료 had + p.p, 주절에는 조동사 과거형 could + have + p.p 완료형)

 

If it had snowed yesterday, we could have gone skiing.

어제 눈이 내렸다면 우리는 스키타러 갈 수 있었을텐데...

 

(과거에 대한 가정법은 형태가 조금 복잡하니까 자세히 보세요. 가정법 중에서 시험에 가장 자주 출제돼요.)

 

[미래 가정문] 

미래 일을 가정하려면 

if 절에 should를 쓰고, 주절에는 will (would)를 써요. 

 

If it should snow tomorrow, we will(would) go skiing.

내일 혹시 눈이 온다면, 우리는 스키타러 갈 거예요. 

 

[시험에서 유의할 점]

 

일단 if절과 주절의 동사를 일치시키는 것에 유념하세요. 

 

if절현재형 동사가 쓰이면 주절에도 현재형 동사: If it rains tomorrow, we will stay indoors.

if절과거형 동사가 쓰이면 주절에도 과거형 동사: If it were sunny now, we would go on a picnic. 

if절에 (과거)완료가 쓰이면 주절에도 (조동사 과거형 +)완료: If it had snowed yesterday, we could have gone skiing. (시험에 빈출)

 

미래에 관한 가정문에서는 문법적으로는 should ~ would가 맞지만,

실제로는 should 다음에 그냥 현재형 동사 (will)이나 동사 원형 (명령법) 동사가 쓰인다고 했죠. 

 

If it should snow tomorrow, we will(would) go skiing. 

 

미래에 관한 가정문은 원래 will, would 둘 다 쓰이므로 시험에는 거의 출제되지 않아요.

 

[문법 용어 정리]

 

기존 문법책에서는 

If it were sunny now, we would go skiing. 

 

이런 현재 상황에 대한 가정 문장을 '가정법 과거'라고 불러요. 

이유는, 쓰인 동사 were가 과거형이기 때문이에요. 

하지만 이 용어는 과거 상황에 대한 가정문으로 착각하게 만들기 때문에 배우는 사람에게 혼동을 일으키는, 좋지 않은 용어예요. 

 

If it had snowed yesterday, we could have gone skiing. 

이 문장도 기존 문법책에서는 '가정법 과거 완료'라고 불러요. 

단순히 if절 동사가 과거 완료형이기 때문에 그렇게 부르는데, 마찬가지로 혼동을 일으켜요

 

게다가

If it should snow tomorrow, we will go skiing.

이런 문장에는 동사를 이용해서 부를 이름이 없기 때문에

이때는 가정법 should가 아니고 '가정법 미래'라고 불러요. 

 

기존 문법책에 쓰인 가정법 용어는 두개는 동사의 형태를 기준으로 부르다가

다른 하나는 동사의 의미를 기준으로 이름을 정한 방식이라, 체계가 없고 중구난방이에요.

영어를 배우는 사람들에게는 계속 혼동만 일으키죠. 

 

그래서 저는 그런 기존 용어 대신에 

 

1. 조건문

2. 현재 상황에 대한 가정문

3. 과거 상황에 대한 가정문

4. 미래 상황에 대한 가정문

으로 4가지로 단순하게 정리해서 부르고 있어요.  

 

문법 용어는 하나도 중요하지 않아요. 중요한 것은 '이해'하는 것이죠. 

아무렇게나 부를 수 있지만, 최소한 혼동을 일으키는 용어는 정리할 필요가 있다고 생각해요. 

 

[알아두면 좋은 정보]

 

일반적으로는 실제 영어에서 단순 조건문이 압도적으로 많이 쓰이지만

시험 영어에서는 가정문, 그 중에서도 과거 일에 대한 가정문이 가장 많이 나와요. 

 

 

+ Recent posts