diff --git a/src/DynareBison.yy b/src/DynareBison.yy
index 0acc771935d4e8b8c6657b49dc770eb2776641ff..b3f1677463c6597e644271f3fa7c5a64e6ac6b4c 100644
--- a/src/DynareBison.yy
+++ b/src/DynareBison.yy
@@ -83,7 +83,7 @@ class ParsingDriver;
 %token DATAFILE FILE SERIES DOUBLING DR_CYCLE_REDUCTION_TOL DR_LOGARITHMIC_REDUCTION_TOL DR_LOGARITHMIC_REDUCTION_MAXITER DR_ALGO DROP DSAMPLE DYNASAVE DYNATYPE CALIBRATION DIFFERENTIATE_FORWARD_VARS
 %token END ENDVAL EQUAL ESTIMATION ESTIMATED_PARAMS ESTIMATED_PARAMS_BOUNDS ESTIMATED_PARAMS_INIT EXTENDED_PATH ENDOGENOUS_PRIOR EXPRESSION
 %token FILENAME DIRNAME FILTER_STEP_AHEAD FILTERED_VARS FIRST_OBS LAST_OBS SET_TIME OSR_PARAMS_BOUNDS KEEP_KALMAN_ALGO_IF_SINGULARITY_IS_DETECTED
-%token <string> FLOAT_NUMBER DATES
+%token <string> FALSE FLOAT_NUMBER DATES
 %token DEFAULT FIXED_POINT FLIP OPT_ALGO COMPILATION_SETUP COMPILER ADD_FLAGS SUBSTITUTE_FLAGS ADD_LIBS SUBSTITUTE_LIBS
 %token FORECAST K_ORDER_SOLVER INSTRUMENTS SHIFT MEAN STDEV VARIANCE MODE INTERVAL SHAPE DOMAINN
 %token GAMMA_PDF GRAPH GRAPH_FORMAT CONDITIONAL_VARIANCE_DECOMPOSITION NOCHECK STD
@@ -116,7 +116,7 @@ class ParsingDriver;
 %token STDERR STEADY STOCH_SIMUL SYLVESTER SYLVESTER_FIXED_POINT_TOL REGIMES REGIME REALTIME_SHOCK_DECOMPOSITION CONDITIONAL UNCONDITIONAL
 %token TEX RAMSEY_MODEL RAMSEY_POLICY RAMSEY_CONSTRAINTS PLANNER_DISCOUNT PLANNER_DISCOUNT_LATEX_NAME
 %token DISCRETIONARY_POLICY DISCRETIONARY_TOL EVALUATE_PLANNER_OBJECTIVE
-%token <string> TEX_NAME
+%token <string> TEX_NAME TRUE
 %token UNIFORM_PDF UNIT_ROOT_VARS USE_DLL USEAUTOCORR GSA_SAMPLE_FILE USE_UNIVARIATE_FILTERS_IF_SINGULARITY_IS_DETECTED
 %token VALUES VAR VAREXO VAREXO_DET VARIABLE VAROBS VAREXOBS PREDETERMINED_VARIABLES VAR_EXPECTATION VAR_EXPECTATION_MODEL PLOT_SHOCK_DECOMPOSITION MODEL_LOCAL_VARIABLE
 %token WRITE_LATEX_DYNAMIC_MODEL WRITE_LATEX_STATIC_MODEL WRITE_LATEX_ORIGINAL_MODEL CROSSEQUATIONS COVARIANCE WRITE_LATEX_STEADY_STATE_MODEL
@@ -180,7 +180,7 @@ class ParsingDriver;
 %type <string> vec_of_vec_value vec_value_list date_expr number
 %type <string> vec_value_1 vec_value signed_inf signed_number_w_inf
 %type <string> range vec_value_w_inf vec_value_1_w_inf
-%type <string> integer_range signed_integer_range
+%type <string> integer_range signed_integer_range boolean
 %type <string> sub_sampling_options list_sub_sampling_option
 %type <SymbolType> change_type_arg
 %type <vector<string>> vec_str vec_str_1
@@ -1586,6 +1586,10 @@ signed_number_w_inf : signed_inf
                     | signed_number
                     ;
 
+boolean : TRUE
+        | FALSE
+        ;
+
 estimated_params : ESTIMATED_PARAMS ';' estimated_list END ';' { driver.estimated_params(); };
 
 estimated_list : estimated_list estimated_elem
@@ -2095,6 +2099,8 @@ list_optim_option : QUOTED_STRING COMMA QUOTED_STRING
                     { driver.optim_options_string($1, $3); }
                   | QUOTED_STRING COMMA signed_number
                     { driver.optim_options_num($1, $3); }
+                  | QUOTED_STRING COMMA boolean
+                    { driver.optim_options_num($1, $3); }
                   ;
 
 optim_options : list_optim_option
@@ -3957,6 +3963,8 @@ symbol : NAME
        | NONE
        | DR
        | PRIOR
+       | TRUE
+       | FALSE
        ;
 
 
diff --git a/src/DynareFlex.ll b/src/DynareFlex.ll
index 7b7c962dd6d350e5660430dbfe2ce6faa3f3f898..b8fc7a5b4fc3780acd8a72b16a2d4f419824157e 100644
--- a/src/DynareFlex.ll
+++ b/src/DynareFlex.ll
@@ -796,6 +796,14 @@ DATE -?[0-9]+([ya]|m([1-9]|1[0-2])|q[1-4])
 <DYNARE_STATEMENT>coefficients {return token::COEFFICIENTS;}
 <DYNARE_STATEMENT>variances {return token::VARIANCES;}
 <DYNARE_STATEMENT>equations {return token::EQUATIONS;}
+<DYNARE_STATEMENT>true {
+  yylval->build<string>(yytext);
+  return token::TRUE;
+}
+<DYNARE_STATEMENT>false {
+    yylval->build<string>(yytext);
+    return token::FALSE;
+}
 
 <DYNARE_STATEMENT,DYNARE_BLOCK>\. {return Dynare::parser::token_type (yytext[0]);}
 <DYNARE_STATEMENT>\\ {return Dynare::parser::token_type (yytext[0]);}