# Nakafa Framework: LLM URL: https://nakafa.com/en/subject/high-school/12/mathematics/function-transformation/horizontal-dilation Source: https://raw.githubusercontent.com/nakafaai/nakafa.com/refs/heads/main/packages/contents/subject/high-school/12/mathematics/function-transformation/horizontal-dilation/en.mdx Output docs content for large language models. --- export const metadata = { title: "Horizontal Dilation", description: "Understand horizontal dilation in functions with clear examples. Learn how to stretch or compress graphs horizontally and apply these concepts to various functions.", authors: [{ name: "Nabil Akbarazzima Fatih" }], date: "05/26/2025", subject: "Function Transformation", }; import { getColor } from "@repo/design-system/lib/color"; import { LineEquation } from "@repo/design-system/components/contents/line-equation"; ## Basic Concepts of Horizontal Dilation Horizontal dilation is a geometric transformation that changes the size of a function graph horizontally, like pulling or compressing a rubber band left and right. Imagine holding a photo with both hands on the left and right sides, then stretching or compressing it horizontally without changing the height of the photo. If we have a function , then horizontal dilation produces a new function where is the scale factor that determines how much the horizontal size changes. ### Rules of Horizontal Dilation For any function , horizontal dilation is defined as: Where is the scale factor that affects the transformation: - If , the graph is compressed horizontally (reduced) - If , the graph is stretched horizontally (enlarged) - If , the graph does not change - If , the graph undergoes reflection as well as dilation Note that the effect of horizontal dilation is counterintuitive: a larger scale factor actually compresses the graph. ## Visualization of Horizontal Dilation Let's see how horizontal dilation works on the quadratic function with various scale factors. Horizontal Dilation of Quadratic Function } description="Notice how the graph is compressed or stretched horizontally with different scale factors." showZAxis={false} data={[ { points: Array.from({ length: 41 }, (_, i) => { const x = (i - 20) * 0.25; return { x, y: x * x, z: 0 }; }), color: getColor("PURPLE"), labels: [{ text: "f(x) = x²", offset: [4, 2, 0] }], showPoints: false, }, { points: Array.from({ length: 41 }, (_, i) => { const x = (i - 20) * 0.25; return { x, y: (2 * x) * (2 * x), z: 0 }; }), color: getColor("ORANGE"), labels: [{ text: "g(x) = (2x)²", offset: [4, 3, 0] }], showPoints: false, }, { points: Array.from({ length: 41 }, (_, i) => { const x = (i - 20) * 0.25; return { x, y: (0.5 * x) * (0.5 * x), z: 0 }; }), color: getColor("SKY"), labels: [{ text: "h(x) = (0.5x)²", offset: [4, 1, 0] }], showPoints: false, }, ]} /> From the visualization above, we can observe: - The original function as reference - Function is horizontally compressed by factor 2 - Function is horizontally stretched by factor 0.5 - All graphs have the same vertex at ## Horizontal Dilation on Linear Functions Now let's apply the same concept to the linear function . Horizontal Dilation of Linear Function } description="The dilated line has slope that changes according to the scale factor." showZAxis={false} data={[ { points: Array.from({ length: 21 }, (_, i) => { const x = (i - 10) * 0.5; return { x, y: x + 2, z: 0 }; }), color: getColor("AMBER"), labels: [{ text: "f(x) = x + 2", offset: [2, 0.5, 0] }], showPoints: false, }, { points: Array.from({ length: 21 }, (_, i) => { const x = (i - 10) * 0.5; return { x, y: (2 * x) + 2, z: 0 }; }), color: getColor("TEAL"), labels: [{ text: "g(x) = 2x + 2", offset: [1, 1.5, 0] }], showPoints: false, }, { points: Array.from({ length: 21 }, (_, i) => { const x = (i - 10) * 0.5; return { x, y: (0.5 * x) + 2, z: 0 }; }), color: getColor("ROSE"), labels: [{ text: "h(x) = 0.5x + 2", offset: [3, -0.5, 0] }], showPoints: false, }, ]} /> Notice that: - The original function has slope 1 - Function has slope 2 (horizontally compressed) - Function has slope 0.5 (horizontally stretched) - All lines intersect the y-axis at the same point ## Important Properties of Horizontal Dilation ### Effect on Coordinate Points If point is on the graph of , then the corresponding point on the graph of is . ### Domain and Range - **Domain**: Changes according to the scale factor - **Range**: Does not change after horizontal dilation If the domain of the original function is , then the domain after horizontal dilation with factor becomes . ### Axis Intercepts - **x-intercept**: Changes according to the scale factor - **y-intercept**: Does not change ## Application Examples ### Exponential Function Let's look at horizontal dilation on the exponential function . Horizontal Dilation of Exponential Function } description="The exponential curve undergoes width changes according to the scale factor." showZAxis={false} cameraPosition={[8, 6, 8]} data={[ { points: Array.from({ length: 31 }, (_, i) => { const x = (i - 15) * 0.3; return { x, y: Math.pow(2, x), z: 0 }; }), color: getColor("INDIGO"), labels: [{ text: "f(x) = 2^x", offset: [2, 1, 0] }], showPoints: false, }, { points: Array.from({ length: 31 }, (_, i) => { const x = (i - 15) * 0.3; return { x, y: Math.pow(2, 2 * x), z: 0 }; }), color: getColor("EMERALD"), labels: [{ text: "g(x) = 2^(2x)", offset: [1, 2, 0] }], showPoints: false, }, ]} /> For exponential functions: - The horizontal asymptote remains at for both functions - The y-intercept remains the same at - The growth rate of the function changes according to the scale factor ## Horizontal Dilation with Negative Factor Let's see what happens when the scale factor is negative. Horizontal Dilation with Negative Factor } description="Negative scale factor causes reflection as well as dilation." showZAxis={false} cameraPosition={[10, 6, 10]} data={[ { points: Array.from({ length: 41 }, (_, i) => { const x = (i - 20) * 0.25; return { x, y: x * x + 1, z: 0 }; }), color: getColor("CYAN"), labels: [{ text: "f(x) = x² + 1", offset: [2, 1, 0] }], showPoints: false, }, { points: Array.from({ length: 41 }, (_, i) => { const x = (i - 20) * 0.25; return { x, y: (-2 * x) * (-2 * x) + 1, z: 0 }; }), color: getColor("PINK"), labels: [{ text: "g(x) = (-2x)² + 1", offset: [3, 2, 0] }], showPoints: false, }, ]} /> When the scale factor is negative: - The graph undergoes reflection across the y-axis - Simultaneously undergoes dilation according to the absolute value of the scale factor - The graph shape remains the same because the quadratic function is symmetric ## Exercises 1. Given the function . Determine the equation of the function resulting from horizontal dilation with scale factor 3. 2. If the graph of function undergoes horizontal dilation with factor , determine: - The equation of the resulting dilated function - The domain of the function after dilation 3. Function undergoes horizontal dilation with factor -1. Determine the vertex of the resulting dilated function. ### Answer Key 1. Horizontal dilation with factor 3: Function and Its Dilation Result} description="The original parabola is horizontally compressed by factor 3 producing a narrower parabola." showZAxis={false} cameraPosition={[12, 8, 12]} data={[ { points: Array.from({ length: 41 }, (_, i) => { const x = (i - 20) * 0.25; return { x, y: x * x - 2 * x + 1, z: 0 }; }), color: getColor("PURPLE"), labels: [{ text: "f(x) = x² - 2x + 1", offset: [4, 1, 0] }], showPoints: false, }, { points: Array.from({ length: 41 }, (_, i) => { const x = (i - 20) * 0.25; return { x, y: 9 * x * x - 6 * x + 1, z: 0 }; }), color: getColor("ORANGE"), labels: [{ text: "f'(x) = 9x² - 6x + 1", offset: [3, 2, 0] }], showPoints: false, }, ]} /> 2. Equation of the resulting dilated function: - Horizontal dilation: - Domain after dilation: becomes (unchanged because the scale factor is positive) Visualization: Function and Its Dilation Result} description="The square root curve is horizontally stretched by factor 0.5 producing a wider curve." showZAxis={false} data={[ { points: Array.from({ length: 21 }, (_, i) => { const x = i * 0.25; return { x, y: Math.sqrt(x), z: 0 }; }), color: getColor("VIOLET"), labels: [{ text: "g(x) = √x", offset: [2, 1, 0] }], showPoints: false, }, { points: Array.from({ length: 21 }, (_, i) => { const x = i * 0.25; return { x, y: Math.sqrt(0.5 * x), z: 0 }; }), color: getColor("TEAL"), labels: [{ text: "g'(x) = √(x/2)", offset: [3, 0.5, 0] }], showPoints: false, }, ]} /> 3. The original function has its vertex at . After horizontal dilation with factor -1: , the vertex becomes . Function and Its Dilation Result} description="The absolute value function undergoes reflection and dilation with factor -1." showZAxis={false} cameraPosition={[10, 6, 10]} data={[ { points: Array.from({ length: 41 }, (_, i) => { const x = (i - 20) * 0.25; return { x, y: Math.abs(x - 2), z: 0 }; }), color: getColor("INDIGO"), labels: [{ text: "h(x) = |x - 2|", offset: [2.5, 1, 0] }], showPoints: false, }, { points: Array.from({ length: 41 }, (_, i) => { const x = (i - 20) * 0.25; return { x, y: Math.abs(-x - 2), z: 0 }; }), color: getColor("EMERALD"), labels: [{ text: "h'(x) = |-x - 2|", offset: [2.5, 2, 0] }], showPoints: false, }, ]} />